易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : sqlserver

SqlServer大批量导入导出数据

BULK INSERT
  在SQL Server中,BULK INSERT是用来将外部文件以一种特定的格式加载到数据库表的T-SQL命令。该命令使开发人员能够直接将数据加载到数据库表中,而不需要使用类似于Integration Services这样的外部程序。虽然BULK INSERT不允许包含任何复杂的逻辑或转换,但能够提供与格式化相关的选项,并告诉我们导入是如何实现的。BULK INSERT有一个使用限制,就是只能将数据导入SQL Server。
  插入数据下面的例子能让我们更好的理解如何使用BULK INSERT命令。首先,我们来创建一个名为Sales的表,我们将要把来自文本文件的数据插入到这个表中。
  CREATE TABLE [dbo].[Sales] 
  ( 
  [SaleID] [int], 
  [Product] [varchar](10) NULL, 
  [SaleDate] [datetime] NULL, 
  [SalePrice] [money] NULL 
  ) 
    当我们使用BULK INSERT命令来插入数据时,不要启动目标表中的触发器,因为触发器会减缓数据导入的进程。
  在下一个例子中,我们将在Sales表上创建触发器,用来打印插入到表 ......

SQLServer导出表到EXCEL文件的存储过程

 SQL Server导出表到EXCEL文件的存储过程:
  *--数据导出EXCEL
  导出表中的数据到Excel,包含字段名,文件为真正的Excel文件
  ,如果文件不存在,将自动创建文件
  ,如果表不存在,将自动创建表
  基于通用性考虑,仅支持导出标准数据类型
  ---*/
  /**//*--调用示例
  p_exporttb @tbname='地区资料',@path='c:',@fname='aa.xls'
  --*/
  if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_exporttb]') and
  OBJECTPROPERTY(id, N'IsProcedure') = 1)
  drop procedure [dbo].[p_exporttb]
  GO
  create proc p_exporttb
  @tbname sysname, --要导出的表名,注意只能是表名/视图名
  @path nvarchar(1000), --文件存放目录
  @fname nvarchar(250)='' --文件名,默认为表名
  as
  declare @err int,@src nvarchar(255),@desc nvarchar(255),@out int
  declare @obj int,@constr nvarchar(1000),@sql varchar(8000),@fdlist varchar(8000)
  --参数检测
  if isnull(@fname,'')='' set @fname=@tbname+'.xls'
  --检查文件是否已经存在
  if right(@path,1)<>' ......

JAVA SQLSERVER数据库连接

 package cn.ctgu.edu.ac;
import java.sql.*;
public class test {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  String url="jdbc:sqlserver://localhost:1433;Database=网上书店管理系统;integratedSecurity=true;"; //用widows身份登录
  String sql="select * from users";
  Connection conn=null;
  try
  {
   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   conn=DriverManager.getConnection(url);
   Statement state=conn.createStatement();
   ResultSet rs=state.executeQuery(sql);
   while(rs!=null&&rs.next())
   {
    System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4)+" "+rs.getString(5)+" "+rs.getString(6));
    
   }
&nbs ......

JAVA SQLSERVER数据库连接

 package cn.ctgu.edu.ac;
import java.sql.*;
public class test {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  String url="jdbc:sqlserver://localhost:1433;Database=网上书店管理系统;integratedSecurity=true;"; //用widows身份登录
  String sql="select * from users";
  Connection conn=null;
  try
  {
   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   conn=DriverManager.getConnection(url);
   Statement state=conn.createStatement();
   ResultSet rs=state.executeQuery(sql);
   while(rs!=null&&rs.next())
   {
    System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4)+" "+rs.getString(5)+" "+rs.getString(6));
    
   }
&nbs ......

MS Sqlserver视图巧用

 1、创建数据库testdb
 2、创建表test
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[test](
 [id] [nchar](10) COLLATE Chinese_PRC_CI_AS NULL,
 [name] [nchar](10) COLLATE Chinese_PRC_CI_AS NULL,
 [sex] [bit] NULL
) ON [PRIMARY]
3、创建数据库db
4、创建视图
  create view view_1
as
SELECT     id, name, sex
from         testdb.dbo.test
5、select * from view_1
insert into view_1(id,name,sex) values('6','6','True')
update view_1 set sex='false' where id=6
delete view_1 where id='6'
通过以上实验可以证明,视图可以当做表来使用,从而可以实现从一数据库映射到另一数据库, ......

用SQL语句得到SQLServer 的表中的列的描述值

 select   case   when   c.colid=1   then   object_name(c.id)   else   ''   end   as   表名    
  ,c.name   as   字段名  
  ,t.name   数据类型  
  ,c.prec   as   长度  
  ,p.value   as   描述信息  
  ,m.text   as   默认值  
  from   syscolumns   c  
  inner   join   systypes   t   on   c.xusertype=t.xusertype  
  left   join   sysproperties   p   on   c.id=p.id   and   c.colid   =   p.smallid  
  left   join   syscomments   m   on   c.cdefault=m.id  
  where   objectproperty(c.id,'IsUserTable')=1 ......

用SQL语句得到SQLServer 的表中的列的描述值

 select   case   when   c.colid=1   then   object_name(c.id)   else   ''   end   as   表名    
  ,c.name   as   字段名  
  ,t.name   数据类型  
  ,c.prec   as   长度  
  ,p.value   as   描述信息  
  ,m.text   as   默认值  
  from   syscolumns   c  
  inner   join   systypes   t   on   c.xusertype=t.xusertype  
  left   join   sysproperties   p   on   c.id=p.id   and   c.colid   =   p.smallid  
  left   join   syscomments   m   on   c.cdefault=m.id  
  where   objectproperty(c.id,'IsUserTable')=1 ......

SQLSERVER修复小知识

在与数据库打交道的工作中时常会碰到一些数据库的错误,这就涉及到了修复的过程,以下知识点都是从网上收集而来:
1、dbcc checkdb
这个命令恐怕是我们最常用的了,带检查和修复功能
语法格式:
DBCC CHECKDB
[
[ ( database_name | database_id | 0
[ , NOINDEX
| , { REPAIR_ALLOW_DATA_LOSS | REPAIR_FAST | REPAIR_REBUILD } ]
) ]
[ WITH
{
[ ALL_ERRORMSGS ]
[ , EXTENDED_LOGICAL_CHECKS ]
[ , NO_INFOMSGS ]
[ , TABLOCK ]
[ , ESTIMATEONLY ]
[ , { PHYSICAL_ONLY | DATA_PURITY } ]
}
]

REPAIR_ALLOW_DATA_LOSS  该参数会尝试修复所有错误,但在修复的过程中会出现数据的丢失
REPAIR_FAST                          该参数进行小的、不耗时的修复操作,如修复非聚集索引中的附加键。这些修复可以很快完成,并且不会有丢失                           & ......
总记录数:341; 总页数:57; 每页6 条; 首页 上一页 [38] [39] [40] [41] 42 [43] [44] [45] [46] [47]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号