当前位置: 首页 > 编程语言 > C#

如何从MSSQL数据表中检索列默认值分享

时间:2023-04-10 10:57:16 C#

如何从MSSQL数据表中检索列默认值我使用DataAdapter.FillSchema从MSSQL中检索表的schema。不幸的是,这不会返回列的默认值。因为我需要检查数百个表,所以有没有一种方法可以快速有效地检索此值作为模式的一部分?谢谢!默认值仅在插入行时确定。作为替代方案,您可以使用Information_schemaSELECTTABLE_NAME,COLUMN_NAME,COLUMN_DEFAULTFROMAdventureWorks2012.INFORMATION_SCHEMA.COLUMNSWHERETABLE_NAME='Person';试试这个查询:SELECTANDobject_definition(default_object_id)ASNamedefinitionFROMColumnRE='Person'WHEREobject_id=object_id('TableName')不能用FillSchema做到这一点。有关详细信息,请查看以下链接http://msdn.microsoft.com/en-us/library/229sz0y5.aspxINFORMATION_SCHEMA是您应该寻找的地方。INFORMATION_SCHEMA包含许多系统视图,可以显示数据库结构的详细信息。例如INFORMATION_SCHEMA.TABLES:显示数据库中表的列表INFORMATION_SCHEMA.COLUMNS:显示数据库所有表中的列及其属性的列表。请参阅以下位置了解更多详情。http://msdn.microsoft.com/en-us/library/ms186778.aspx要使用查询获取默认值,您可以使用以下查询:SELECT*FROMINFORMATION_SCHEMA.ColumnsWHERETABLE_NAME='YourTableName'你应该尝试这样的事情来检索表架构。publicpartialclassForm1:Form{//创建连接字符串变量conststringconString=@"DataSource=.SQLEXPRESS;InitialCatalog=DBTest;IntegratedSecurity=SSPI";SqlConnectioncn=null;publicForm1(){InitializeComponent();privatevoidForm1_Load(objectsender,EventArgse){this.getTableSchema();}//从MSSQLSERVER中的表中获取模式的函数privatevoidgetTableSchema(){try{cn=newSqlConnection(conString);cn.打开();//调用SqlConnection对象的getSchema方法作为参数传入架构以检索DataTabledt=cn.GetSchema("tables");//将检索到的数据绑定到DataGridView以显示结果。这个.dataGridView1.DataSource=dt;}赶上(异常){抛出;}}}Edit:ClosingquoteaboutconString以上是C#学习教程:HowtoretrievecolumndefaultvaluefromMSSQLdatatable很有用,需要多了解C#学习教程,希望大家多多关注——这个文章收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:

最新推荐
猜你喜欢