VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

給MS SQL Server database 裡面所有 NUMERIC fields 加上默認值為 0

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
foxy



註冊時間: 2007-08-16
文章: 231
來自: 泰國

第 1 樓

發表發表於: 星期四 七月 13, 2023 6:21 pm    文章主題: 給MS SQL Server database 裡面所有 NUMERIC fields 加上默認值為 0 引言回覆

各位先進, 大家好

小弟使用 MS SQL Server database, 裡面有很多 table, 現在小弟需要把所有的屬於NUMERIC 類別的 fields 一次性找出來, 並加上默認值 default 為 0.
請問如何做?

謝謝

_________________
進銷存+生產製造+會計+員工薪資+CRM+POS零售+餐廳手機app+電商手機app+電商網站,物流系統. 正/簡體中文,英,日,泰,緬甸文. MS SQL Server + 前台 VFP + PHP 網站 + Flutter 手機 App, 都共享 MS SQL Server的資料. www.foxacc.com LINE: mike-lm
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站 MSN Messenger
syntech



註冊時間: 2003-05-16
文章: 4212
來自: Taipei,Taiwan

第 2 樓

發表發表於: 星期五 七月 14, 2023 2:31 pm    文章主題: 引言回覆

找出所有 TABLE 所有欄位 中欄位型態為 NUMERIC
代碼:


select 
        s.[name]            'Schema',
        t.[name]            'Table',
        c.[name]            'Column',
        d.[name]            'Data Type',
        c.[max_length]      'Length',
        d.[max_length]      'Max Length',
        d.[precision]       'Precision',
        c.[is_identity]     'Is Id',
        c.[is_nullable]     'Is Nullable',
        c.[is_computed]     'Is Computed',
        d.[is_user_defined] 'Is UserDefined',
        t.[modify_date]     'Date Modified',
        t.[create_date]     'Date created'
from        sys.schemas s
inner join  sys.tables  t
on s.schema_id = t.schema_id
inner join  sys.columns c
on t.object_id = c.object_id
inner join  sys.types   d
on c.user_type_id = d.user_type_id
where d.[name] = 'numeric'



然後你在自己組合 ALTER TABLE 的命令吧

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
foxy



註冊時間: 2007-08-16
文章: 231
來自: 泰國

第 3 樓

發表發表於: 星期二 七月 18, 2023 12:23 pm    文章主題: 引言回覆

syntech 寫到:
找出所有 TABLE 所有欄位 中欄位型態為 NUMERIC
然後你在自己組合 ALTER TABLE 的命令吧


謝謝老兄指點, 小弟得到一個辦法, 具體思路跟老兄的一樣

DECLARE @sql nvarchar(max)
SELECT @sql = ISNULL(@sql+CHAR(13)+CHAR(10),'') + 'ALTER TABLE ['+TABLE_NAME+ '] ADD CONSTRAINT [DF_'+TABLE_NAME+'_'+COLUMN_NAME+'] DEFAULT (0) FOR '+Column_Name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE DATA_TYPE IN ('int', 'smallint', 'tinyint', 'numeric')
AND COLUMN_DEFAULT IS NULL;

execute sp_executeSQL @sql;

_________________
進銷存+生產製造+會計+員工薪資+CRM+POS零售+餐廳手機app+電商手機app+電商網站,物流系統. 正/簡體中文,英,日,泰,緬甸文. MS SQL Server + 前台 VFP + PHP 網站 + Flutter 手機 App, 都共享 MS SQL Server的資料. www.foxacc.com LINE: mike-lm
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站 MSN Messenger
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作