【正文】
先從SYSTEMobxject系統(tǒng)表中取得數(shù)據(jù)表的SYSTEMID然后再SYSCOLUMN表中取得該數(shù)據(jù)表的所有列名。用戶名功能名稱科目編碼*/use UFDATA_002_2008select 注:(***為賬套號)***39。From ua_task00239。00239。dSubOriDate ascUser_Id asdSubSysUsed asiModiPeri asbClosing asbIsDelete ascSub_Id as賬套號iYear asiSysID ascOrgCode ascDescxription ascDomain as cIsCompanyVer as cTradeKind as cEntType as cUnitLP as cUnitTaxNo as cUnitEMail as cUnitFax as cUnitTel as cUnitZap as cUnitAddr ascUnitAbbre ascUnitName ascCurName ascCurCode ascAcc_Master asiMonth asiYear ascAcc_Path ascAcc_Name ascAcc_Id as操作員名稱from UA_User where nState=1。cUser_Id as操作員名稱from UA_User where iAdmin=1。cUser_Id as所在組nState as是否帳套主管理cDept as是否停用操作員編碼cUser_Name as查詢用友版本號use ufsystemgoselect * from UA_Versiongo查看系統(tǒng)用戶信息表use ufsystemselect cUser_Id as操作員名稱nState asiAdmin as所屬部門cBelongGrp as是否停用from UA_User查看具有帳套主管身份的操作員select 操作員編碼cUser_Name as查看被停用的操作員select 操作員編碼cUser_Name as帳套主子表相關信息use ufsystem帳套主表select賬套號賬套名稱賬套路徑啟用會計期年啟用會計期月賬套主管本幣代碼本幣名稱單位名稱單位簡稱單位地址郵政編碼聯(lián)系電話傳真電子郵件稅號法人企業(yè)類型行業(yè)類型是否集團版域名備注機構編碼賬套內部標識from ua_account帳套子表select cAcc_Id as賬套年度模塊標識是否刪除是否關閉會計期間啟用會計日期操作員啟用自然日期from ua_account_sub當客戶的數(shù)據(jù)在其它機器上做的升級然后拷回到原機器/*拷回的數(shù)據(jù),通過‘系統(tǒng)管理’在原機器上引入后,并不會在ufsystem數(shù)據(jù)庫中的ua_account_sub這個帳套子表中回寫上一年度的bClosing字段來關閉上一年度*/比如002帳套結轉后年度為2010則用于關閉上一(2009)年度的sql如下:select * from ua_account_sub where cAcc_Id=39。 and iYear=2008update ua_account_sub set bclosing=0where cAcc_Id=39。 and iYear=2008清除異常任務及單據(jù)鎖定use ufsystemdelete from ua_taskdelete from ua_taskloggodelete from ufsystem..ua_taskdelete from ufsystem..ua_taskloggoSelect *Where(cacc_id=39。) 科目鎖定的解決/*XX科目已經(jīng)被用戶[XX]鎖定”或“科目(xxxxxx)正在被機器(xxxx)上的用戶(xxx)進行(xxxx)操作鎖定請稍候再試”。ccode ascauth ascuser ascmachine asSQL語句如下:*//*(方法一*/select * from ufsystem..ua_accountselect * from syscolumns where id=obxject_id(39。)declare objid intobjname char(40)set objname = 39。select objid = id from sysobxjects where id = obxject_id(objname)select 39。 = name from syscolumns where id = objid order by colid/*(方法二(鄒建)*/跟蹤程序的運行就可以了. /* 開始程序MS 事件探察器(SQL 文件設置要跟蹤的服務器的信息(連接服務器)確定然后數(shù)據(jù)庫的調用情況就會顯示出來在跟蹤項目設置中如果不熟悉的話一般用默認設置篩選項目有幾個可以注意一下: 同于你要檢測的數(shù)據(jù)庫的dbid可以用 select 你要監(jiān)測的庫名39。 同于你要監(jiān)測的對象名例如表名視圖名等 obxject_id(N39。)得到id 同于錯誤如果經(jīng)常出現(xiàn)某個編號的錯誤則針對此錯誤號 同于0失敗1成功如果是排錯就過濾掉成功的處理*//*方法三:*/如果直接查詢可以參考我的這段代碼: exists * id obxject_id(N39。) obxjectPROPERTY(id IsProcedure39。 = drop [dbo].[p_search] /*搜索某個字符串在那個表的那個字段中/*調用示例 pubs p_search l39。*/ proc str 要搜索的字符串if is return s create t(表名 sysname字段名 sysname) tb local select if 1 [39。]39。]]39。] [39。] N39。%39。%39。) 39。所在的表及字段: ++39。++39。39。 syscolumns join b = =39。 =0 open fetch from into while begin fetch from into end tb tb 通過SQL語句來更改用戶的密碼/*修改別人的需要sysadmin sp_password 39。 User39。sp_password 39。 COLUMN_NAME IS_NULLABLE=39。 TABLE_NAME=39。 如何在數(shù)據(jù)庫里找到含有相同字段的表? a. columnname syscolumns a JOIN sysobxjects = AND U39。 =39。 未知列名查所有在不同表出現(xiàn)過的列名Select As As From s1 o And = U39。Exists 1 syscolumns Where = And 查詢第xxx行數(shù)據(jù)* (select xxx from aa not 1 (select xxx1 from bb =)absolute from 一個月的第一天*/SELECT DATEDIFF(mm0getdate()) /*b.DATEADD(wk 0)一年的第一天*/SELECT DATEDIFF(yy0getdate()) /*d.DATEADD(qq 0) 上個月的最后一天dateadd(ms3DATEADD(mm 0)) 去年的最后一天*/SELECT DATEDIFF(yy0getdate()) /*g.dateadd(ms3DATEADD(mm 0)) 本月的第一個星期一*/select DATEDIFF(wk0 dateadd(dd6datepart(daygetdate())getdate()) 0) 本年的最后一天*/SELECT DATEDIFF(yy0getdate())+1 select convert(datetimeconvert(varchar(8)getdate()120)+39。120)select dateadd(day1convert(datetimeconvert(varchar(8)dateadd(month1getdate())120)+39。120))SELECT dateadd(ms3DATEADD(mmDATEDIFF(m0getdate())+10))SELECT dateadd(ms3DATEADD(mmDATEDIFF(mm0getdate())0))SELECT DATEADD(yyDATEDIFF(yy0getdate())0)SELECT dateadd(ms3DATEADD(yyDATEDIFF(yy0getdate())+10))SELECT DATEADD(qqDATEDIFF(qq0getdate())0) SELECT DATEADD(wkDATEDIFF(wk0getdate())0)select * from tableName where DATEPART(mm theDate) = DATEPART(mm GETDATE()) and DATEPART(yy theDate) = DATEPART(yy GETDATE())select * from tableName where DATEPART(wk theDate) = DATEPART(wk GETDATE()) and DATEPART(yy theDate) = DATEPART(yy GETDATE())select * from tableName where DATEPART(qq theDate) = DATEPART(qq GETDATE()) and DATEPART(yy theDate) = DATEPART(yy GETDATE()):select DATEDIFF(ddgetdate()DATEADD(mm 1 getdate()))select datediff(daydateadd(mm datediff(mm39。getdate()) 39。)dateadd(mm datediff(mm39。getdate()) 39。))DATENAME(weekday getdate())/*查詢數(shù)據(jù)庫的所有用戶表*/use ufdata_002_2008select from where U39。TR39。 parent_obj_id 定義父對象id變量先找出父對象(所在表)的id(在觸發(fā)器不重復歸屬于多個表的情況下)select parent_obj_id=parent_objfrom sysobxjects where name=39。TR39。print 39。+str(parent_obj_id)接下來找出父對象(表)的名稱select name as type=39。 andTR_Ap_CloseBills39。用于查看觸發(fā)器的屬性(參數(shù)指定觸發(fā)器所在的表)use ufdata_002_2008goexec sp_helptrigger Ap_CloseBills創(chuàng)建觸發(fā)器/*(1)創(chuàng)建一個簡單的觸發(fā)器觸發(fā)器是一種特殊的存儲過程,類似于事件函數(shù),SQL Server?創(chuàng)建觸發(fā)器,即當在表中插入、更新、刪除記錄時,觸發(fā)一個或一系列觸發(fā)器可以在查詢分析器里創(chuàng)建,也可以在表名上點右鍵“所有任務”“管理觸發(fā)器”來創(chuàng)建,不過都是要寫語句的,只是在查詢分析