微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

【SQLServer】获得当前数据库的所有表

如果您的数据库系统是sqlServer,就可以使用如下的方式来获得当前数据库的所有表:          private void GetTables_SystemTable()           {              //打开连接              string strConnectionString=System.Configuration.ConfigurationSettings.AppSettings ["ConnectionString"];              sqlcn=new sqlConnection(strConnectionString);              sqlcn.open();              //使用信息架构视图              sqlCommand sqlcmd=new sqlCommand("SELECT OBJECT_NAME (id) FROM sysobjects WHERE xtype = 'U' AND OBJECTPROPERTY (id,'IsMSShipped') = 0",sqlcn);              sqlDataReader dr=sqlcmd.ExecuteReader();              while(dr.Read())               {                  MessageBox.Show(dr.GetString(0));              }          } 6、使用sqlServer的存储过程"sp_tables" 下面是"盛国军"朋友提出的使用存储过程的方法的补充代码。          public void GetTables_StoredProcedure()           {              //处理OleDbConnection              string strConnectionString=@"Integrated Security=sspI;Data Source=HBXP;Initial Catalog=Test;Provider=sqlOLEDB.1";              OleDbConnection cn=new OleDbConnection(strConnectionString);              cn.open();              //执行存储过程              OleDbCommand cmd=new OleDbCommand("sp_tables",cn);              cmd.CommandType=CommandType.StoredProcedure;              OleDbDataReader dr= cmd.ExecuteReader();              while(dr.Read())               {                  MessageBox.Show(dr["TABLE_NAME"].ToString());              }          } 总结:获得当前数据库中所有表的方法还不止,本人列出的这些,希望以上方法能够起到抛砖引玉的作用。以上的这些方法各有各的优缺点,希望大家能够灵活的应该,并且希望能够将发现的新的方法告知我,谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐