国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

SQL點滴3—篩選數據列的類型,字段大小,是否可為空,是否是主鍵,約束等等信息

2024-07-21 02:45:18
字體:
來源:轉載
供稿:網友

項目需要將access數據庫中的數據導入到SQL Server中,需要檢驗導入后的數據完整性,數據值是否正確。我們使用的是Microsoft SQL Server 2008 Migration Assistant for Access這個工具,次工具專門用來將Access中的數據庫導出到SQL Server中,我們的疑慮是這個導出過程中會不會因為認為的原因導致數據錯誤或者數據之間的關聯丟失,看起來有點多次一舉,但是還是找方法來做測試。于是就產生了今天的問題,怎么從SQL Server中找出所有的數據列的類型,字段大小,是否可為空,是否是主鍵,約束等等信息。我找很多資料鼓搗出這個存儲過程,先來看看代碼:

代碼
 1 USE [MIS]
 2 GO
 3
 4 /****** Object:  StoredPRocedure [dbo].[sp_SelectColumnInfor]    Script Date: 09/23/2010 19:00:28 ******/
 5 SET ANSI_NULLS ON
 6 GO
 7
 8 SET QUOTED_IDENTIFIER ON
 9 GO
10
11 create procedure [dbo].[sp_SelectColumnInfor]
12 as
13 declare @table_name varchar(250)
14 --create a temp table
15 create table #tempTable(
16 TABLE_NAME nvarchar(128),
17 COLUMN_NAME nvarchar(128),
18 IS_NULLABLE varchar(3),
19 DATA_TYPE nvarchar(128),
20 CHARACTER_MAXIMUM_LENGTH int,
21 CONSTRAINT_NAME nvarchar(128),
22 )
23 --create a cursor
24 declare curTABLE cursor for
25 select TABLE_NAME from INFORMATION_SCHEMA.TABLES where TABLE_TYPE='BASE TABLE'
26 for read only
27
28 open curTABLE
29 fetch next from curTABLE into @table_name
30 while @@FETCH_STATUS =0
31 begin
32 insert into #tempTable
33 select sc.[TABLE_NAME],sc.[COLUMN_NAME],sc.[IS_NULLABLE],sc.[DATA_TYPE],sc.[CHARACTER_MAXIMUM_LENGTH]
34 ,scc.CONSTRAINT_NAME
35  from INFORMATION_SCHEMA.COLUMNS sc
36 left join INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE scc on sc.COLUMN_NAME=scc.COLUMN_NAME and sc.TABLE_NAME=scc.TABLE_NAME
37 where sc.[TABLE_NAME]=@table_name --order by TABLE_NAME,COLUMN_NAME
38
39 fetch next from curTABLE into @table_name
40 end
41 close curTABLE
42 deallocate curTABLE
43
44 select * from #tempTable order by TABLE_NAME,COLUMN_NAME
45 drop table #tempTable
46 GO

其實很簡單的,只要查查INFORMATION_SCHEMA.COLUMNS , INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE這兩個系統視圖的功能就能明白。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 合阳县| 五莲县| 砀山县| 博罗县| 高阳县| 尼勒克县| 皋兰县| 濮阳县| 札达县| 建瓯市| 商南县| 扶绥县| 麻栗坡县| 伊金霍洛旗| 安顺市| 兰州市| 湖北省| 绥宁县| 蕲春县| 高碑店市| 玛沁县| 滕州市| 日土县| 会宁县| 沂南县| 毕节市| 苍山县| 万年县| 三江| 静乐县| 阿城市| 龙井市| 宜春市| 灌云县| 静海县| 理塘县| 蓬安县| 南城县| 安达市| 呼图壁县| 堆龙德庆县|