免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 933 | 回复: 0
打印 上一主题 下一主题

SQL Server中的一些技巧 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-10-20 11:54 |只看该作者 |倒序浏览

  获取一个SQLServer上的所有数据库信息 用存储过程 sp_databases
  在查询分析其中执行命令exec sp_databases
  结果:
master
14464 NULL
  
model
1280 NULL
  msdb 14336 NULL
  Northwind 4352 NULL
  pubs 2560 NULL
  Store 1912 NULL
  tempdb 8704 NULL
  test 1272 NULL
  获取一个数据库的所有表用存储过程 sp_tables
  执行命令: use Northwind exec sp_tables 结果:
  Northwind dbo sysusers
SYSTEM
TABLE NULL
  Northwind dbo Categories TABLE NULL
  Northwind dbo CustomerCustomerDemo TABLE NULL
  Northwind dbo CustomerDemographics TABLE NULL
  Northwind dbo Customers TABLE NULL
  Northwind dbo dtproperties TABLE NULL
  Northwind dbo Employees TABLE NULL
  Northwind dbo EmployeeTerritories TABLE NULL
  (.......)
  获取一个表的列信息用存储过程sp_columns
  运行exec sp_columns 'Orders' (Orders为表名) 结果
  Northwind dbo Orders OrderID 4 int identity 10 4 0 10 0 NULL NULL 4 NULL NULL 1 NO 56
  Northwind dbo Orders CustomerID -8 nchar 5 10 NULL NULL 1 NULL NULL -8 NULL 10 2 YES 39
  Northwind dbo Orders EmployeeID 4 int 10 4 0 10 1 NULL NULL 4 NULL NULL 3 YES 38
  Northwind dbo Orders OrderDate 11 datetime 23 16 3 NULL 1 NULL NULL 9 3 NULL 4 YES 111
  Northwind dbo Orders RequiredDate 11 datetime 23 16 3 NULL 1 NULL NULL 9 3 NULL 5 YES 111
  Northwind dbo Orders ShippedDate 11 datetime 23 16 3 NULL 1 NULL NULL 9 3 NULL 6 YES 111
  Northwind dbo Orders ShipVia 4 int 10 4 0 10 1 NULL NULL 4 NULL NULL 7 YES 38
  Northwind dbo Orders Freight 3 money 19 21 4 10 1 NULL (0) 3 NULL NULL 8 YES 110
  Northwind dbo Orders ShipName -9 nvarchar 40 80 NULL NULL 1 NULL NULL -9 NULL 80 9 YES 39
  (......)
  获取一个数据库的所有存储过程,可以用
  select * from sysobjects
where
type='p'
  执行所得结果:
  CustOrdersDetail 789577851 P 1 0 1610612736 0 0 0 2000-08-06 01:34:52.513
  CustOrdersOrders 805577908 P 1 0 1610612736 0 0 0 2000-08-06 01:34:52.733
  CustOrderHist 821577965 P 1 0 1610612736 0 0 0 2000-08-06 01:34:52.967
  SalesByCategory 837578022 P 1 0 1610612736 0 0 0 2000-08-06 01:34:53.200
  (......)
  sysobjects这个东西还有其他一些用法,具体可参照SQLServer连机帮助
  在ADO.NET里面获取一个存储过程的参数信息:
  SqlConnection connect = new SqlConnection(ConnectionString);
  connect.Open();
  SqlCommand sc = new SqlCommand("SalesByCategory", connect); // SalesByCategory 为Northwind数据库中的一个存储过程.
  sc.CommandType = CommandType.StoredProcedure;
  SqlCommandBuilder.DeriveParameters(sc);
  foreach(SqlParameter param in sc.Parameters)
  {
  Console.WriteLine("
Name
:{0}, Size:{1}, Type:{2}, Value:{3},Direction:{4}, IsNull:{5}", param.ParameterName, param.Size, param.DbType, param.Value, param.Direction, param.IsNullable);
  }


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/24024/showart_187756.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP