sqlserver命令行
1. sqlserver怎麼通過命令行查看身份驗證是哪一種,windows和SQL server
使用命令提示符下的
isql
或osql,兩個命令基本一致,圖為isql詳細參數
登陸格式為:isql
-s服務地址
-u帳號
-p密碼
命令行界面如圖:
2. 求教sqlserver通過命令行生成建表語句
declare@sqlvarchar(8000),@tablenamevarchar(100)
set@tablename='test'--這里輸入表名
set@sql='createtable['+@tablename+']
(
'
select@sql=@sql+b.name+''+
c.name+
casewhenc.collation_nameisnotnullthen'('+
casewhenb.max_length<>-1thenconvert(varchar(100),b.max_length)
else'MAX'
end+')'
else''
end+
casewhenb.is_identity=1then'identity('+convert(varchar(100),IDENT_SEED(@tablename))+','+convert(varchar(100),IDENT_INCR(@tablename))+')'else''end+
casewhend.definitionisnotnullthen'default('+d.definition+')'else''end+
casewhenb.is_nullable=0then'notnull'else'null'end+
',
'
fromsys.objectsajoinsys.columnsb
ona.object_id=b.object_id
joinsys.typesc
onb.system_type_id=c.system_type_idandb.user_type_id=c.user_type_id
leftjoinsys.default_constraintsd
onb.default_object_id=d.object_id
wherea.name=@tablename
orderbyb.column_id
ifexists(select*fromsys.indexeswhereobject_id=object_id(@tablename)andis_primary_key=1)
begin
select@sql=@sql+'CONSTRAINT['+name+']PRIMARYKEY'+type_desc+'
(
'fromsys.indexeswhereobject_id=object_id(@tablename)andis_primary_key=1
select@sql=@sql+b.name+casewhena.is_descending_key=1then'DESC'else'ASC'end+',
'fromsys.index_columnsajoinsys.columnsb
ona.object_id=b.object_idanda.column_id=b.column_id
wherea.object_id=object_id(@tablename)
select@sql=left(@sql,len(@sql)-3)+'
)'
select@sql=@sql+'
)ON[PRIMARY]'
end
else
begin
select@sql=left(@sql,len(@sql)-1)+'
)ON[PRIMARY]'
end
print@sql
3. 如何以命令行的形式啟動SQL Server
通過SQL
Server命令行啟動及停止SQL服務的方法
在SQL
Server中,想要啟動或停止SQL
Server服務,通過SQL
Server命令行操作就可以實現了。下面為您介紹詳細的實現步驟,希望對您能有所幫助。
操作步驟如下:
(1)在操作系統的任務欄中單擊「開始」...
4. sqlserver 用命令如何導入導出表結構和表數據
平常從SQLSERVER中進行導入導出時,我們利用SQLSERVER中自帶的DTS轉換工具即可,很方便。但有些特殊的用法需要用語句進行導入導出,工作中碰到這種情況,查了些資料,下面詳細介紹:
一、從excel表導入到SQLSERVER use test go select * into test_table from OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;HDR=yes;database=c:\11.xls;','select * from [結果$]') --1.通過Sql Server查詢分析器查詢D:\abc.xls 裡面表 sheet1 SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="D:\abc.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$] --2.如果表a存在,並且表a的結構與上一步的查詢的結構一樣 可以使用 insert into a SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="D:\abc.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$] --3.如果表a不存在,使用into a SELECT * into a FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="D:\abc.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$] 說明:test_table為SQLSERVER資料庫中的表,11.xls是EXCEL表,[結果$]是EXCEL表中的工作表,注意寫法是工作表名加上$符號。 2從SQLSERVER資料庫中導出到EXCEL(一般用語句導庫是在應用程序中,利用各種語言實現,如果不做開發項目,用DTS就很好了,在 SQLSERVER查詢器中利用單條SQL語句實現導入導出不方便,類型轉換是個問題,不好解決) 第一種,無法導入欄位名:(excel表不存在,新建) EXEC master..xp_cmdshell 'bcp zhou.dbo.資料庫表名 out "c:\test.xls" /c /S "伺服器名" /U "用戶名" -P "密碼" ' 第二種,excel文件已存在,要手工把表欄位名填到excel文件中去,再執行下面: insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 8.0;HDR=YES;DATABASE=c:\文件名.xls',sheet1$) select * from 表名 第三種,想實現全自動轉欄位名和記錄,一條語句實現不了,要用到過程,當然如果要做一個自動轉換程序,用VB或者VC語言也可實現。 把下面的過程全拷入SQLSERVER查詢分析器,執行,生成一個過程,過程名為:p_exporttb,然後按應用例子執行過程就OK了,自 動導表 /*******************************/ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_exporttb]') and OBJECTPROPERTY(id, N'IsProcere') = 1) drop procere [dbo].[p_exporttb] GO create proc p_exporttb @sqlstr varchar(8000), --查詢語句,如果查詢語句中使用了order by ,請加上top 100 percent @path nvarchar(1000), --文件存放目錄 @fname nvarchar(250), --文件名 @sheetname varchar(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='temp.xls' if isnull(@sheetname,'')='' set @sheetname=replace(@fname,'.','#') --檢查文件是否已經存在 if right(@path,1)<>'\' set @path=@path+'\' create table #tb(a bit,b bit,c bit) set @sql=@path+@fname insert into #tb exec master..xp_fileexist @sql --資料庫創建語句 set @sql=@path+@fname if exists(select 1 from #tb where a=1) set @constr='DRIVER={Microsoft Excel Driver (*.xls)};DSN='''';READONLY=FALSE' +';CREATE_DB="'+@sql+'";DBQ='+@sql else set @constr='Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties="Excel 8.0;HDR=YES' +';DATABASE='+@sql+'"' --連接資料庫 exec @err=sp_oacreate 'adodb.connection',@obj out if @err<>0 goto lberr exec @err=sp_oamethod @obj,'open',null,@constr if @err<>0 goto lberr --創建表的SQL declare @tbname sysname set @tbname='##tmp_'+convert(varchar(38),newid()) set @sql='select * into ['+@tbname+'] from('+@sqlstr+') a' exec(@sql) select @sql='',@fdlist='' select @fdlist=@fdlist+',['+a.name+']' ,@sql=@sql+',['+a.name+'] ' +case when b.name like '%char' then case when a.length>255 then 'memo' else 'text('+cast(a.length as varchar)+')' end when b.name like '%int' or b.name='bit' then 'int' when b.name like '%datetime' then 'datetime' when b.name like '%money' then 'money' when b.name like '%text' then 'memo' else b.name end FROM tempdb..syscolumns a left join tempdb..systypes b on a.xtype=b.xusertype where b.name not in('image','uniqueidentifier','sql_variant','varbinary','binary','timestamp') and a.id=(select id from tempdb..sysobjects where name=@tbname) if @@rowcount=0 return select @sql='create table ['+@sheetname +']('+substring(@sql,2,8000)+')' ,@fdlist=substring(@fdlist,2,8000) exec @err=sp_oamethod @obj,'execute',@out out,@sql if @err<>0 goto lberr exec @err=sp_oadestroy @obj --導入數據 set @sql='openrowset(''MICROSOFT.JET.OLEDB.4.0'',''Excel 8.0;HDR=YES ;DATABASE='+@path+@fname+''',['+@sheetname+'$])' exec('insert into '+@sql+'('+@fdlist+') select '+@fdlist+' from ['+@tbname+']') set @sql='drop table ['+@tbname+']' exec(@sql) return lberr: exec sp_oageterrorinfo 0,@src out,@desc out lbexit: select cast(@err as varbinary(4)) as 錯誤號 ,@src as 錯誤源,@desc as 錯誤描述 select @sql,@constr,@fdlist go /*******************應用例子***************************/ p_exporttb @sqlstr='select * from 貸款大戶表' ,@path='c:\',@fname='aa.xls',@sheetname='貸款大戶表'
5. 命令行查詢sqlserver有哪些資料庫
可用如下方法:
以sqlserver2008r2為例,可以從系統表中sys.objects來取欄位。
1、打開SQL Server Managment Studio,並登陸到指定資料庫。
2、新建一個查詢窗口。
3、使用如下語句:
select name from sys.objects where type='U';
6. SqlServer 2008 R2使用命令行的方式導出資料庫腳本
選擇資料庫或表右鍵選擇編寫表腳本為(S)選擇CREATE到(C)然後再選擇創建到那個地方。
7. 如何用cmd命令行操作sqlserver
運行 osql -S 【資料庫伺服器】 -U 【登陸用戶名】 -P 【登陸密碼】
出現 1> 表示連接成功,這時候你可以輸入sql語句來進行操作了。
以CMD命令行來操作Sqlserver,DotNetGeek 覺得沒有多大的用處,而且,select出來的數據排版顯示不整齊美觀,
如果你在一台沒有Sqlserver的電腦恰巧想去操作一下公司的Sqlserver,可以使用這個方法。
8. 如何用命令行打開sql sever
通過SQLServer命令行啟動及停止SQL服務的方法在SQLServer中,想要啟動或停止SQLServer服務,通過SQLServer命令行操作就可以實現了。下面為您介紹詳細的實現步驟,希望對您能有所幫助。操作步驟如下:(1)在操作系統的任務欄中單擊「開始」菜單,選擇「運行」命令,在下拉列表框中輸入「cmd」命令,單擊「確定」按鈕。(2)輸入如下命令,即可通過SQLServer命令行啟動、停止或暫停的服務。SQLServer命令行如下:啟動SQLServerNETSTARTMSSQLSERVER暫停SQLServerNETPAUSEMSSQLSERVER重新啟動暫停的停止SQLServerNETSTOPMSSQLSERVER
9. sqlserver常用命令行操作(啟動、停止、暫停)
啟動sql
server
Net
Start
MSSqlServer
暫停sql
server
Net
Pause
MSSqlServer
重新啟動暫停的sql
server
Net
Continue
MSSqlServer
停止sql
server
Net
stop
MSSqlServer
命令行方式修改sql
server
sa
的密碼
一直都是使用企業管理器操作sql的,昨天幫一朋友部署網站,租的國外vps主機,登陸上去只看到sql的圖標正常運行的,企業管理器和查詢分析器的影都沒看到,汗一個。。。空間提供商也不給技術支持,暈了,只有自己想辦法了。
今天網上google一下,終於搞定。
在cmd
窗口下
復制代碼
代碼如下:
C:\Documents
and
Settings\Administrator>osql
-E
1>
sp_password
null,'abc123','sa'
2>
go
Password
changed.
1>
exit
大功告成,sa的密碼修改成了abc123
關鍵是osql這個東東,具體查看
http://msdn.microsoft.com/zh-cn/vstudio/ms162806.aspx
SQL
Server
命令行工具
isql
和
osql
常用命令
命令行操作有時比在圖形界面下用滑鼠還高效,所以高手常用命令行操作,下面簡介SQL
Server
命令行工具
isql
和
osql。
isql
實用工具使您得以輸入
Transact-SQL
語句、系統過程和腳本文件;並且使用
DB-Library
與
SQL
Server
2000
進行通訊。
osql
實用工具使您得以輸入
Transact-SQL
語句、系統過程和腳本文件。該實用工具通過
ODBC
與伺服器通訊。
◆
信任連接:
>isql
-E
或
>osql
-E
◆
察看所有資料庫:
use
master
exec
sp_helpdb
GO
◆
察看資料庫
pubs:
use
master
exec
sp_helpdb
pubs
GO
◆
察看資料庫
pubs
中的對象:
USE
pubs
EXEC
sp_help
GO
相當於
Oracle
的
SELECT
table_name
FROM
user_objects;
◆
察看資料庫
pubs
中的表
employee
結構:
USE
pubs
EXEC
sp_help
employee
GO
相當於
Oracle
的
SQL*PLUS
中的
DESC
employees
◆
SELECT
語句:
USE
pubs
SELECT
*
FROM
employee
GO
◆
當使用單引號分隔一個包括嵌入單引號的字元常量時,用兩個單引號表示嵌入單引號,例如:
SELECT
'O''Leary'
GO
◆
用7.個雙引號表示嵌入雙引號,例如:
SELECT
'O"Leary'
GO
◆
SQL
Server
資料庫信息查詢
use
master
exec
sp_helpdb
pubs
GO
或:
use
master
SELECT
name,
dbid
FROM
sysdatabases
GO
◆
查資料庫對象
(相當於
Oracle
的
SELECT
*
FROM
user_tables;)
USE
pubs
EXEC
sp_help
GO
或
use
master
SELECT
name,
id
FROM
pubs.dbo.sysobjects
WHERE
type='U'
GO
◆
查欄位
(相當於
Oracle
的
SQL*PLUS
中的
DESC
employees
)
USE
pubs
EXEC
sp_help
employee
GO
◆
查看指定
USE
pubs
SELECT
name,
id,
xtype,
length
FROM
syscolumns
WHERE
id=277576027
GO
USE
pubs
SELECT
*
FROM
syscolumns
WHERE
id=277576027
GO
◆
查看數據類型名字的定義:
SELECT
name,
xtype
FROM
systypes
GO
◆
從命令行啟動「查詢分析器」
>isqlw
◆
isql命令
描述
GO
執行最後一個
GO
命令之後輸入的所有語句。
RESET
清除已輸入的所有語句。
ED
調用編輯器。
!!
command
執行操作系統命令。
QUIT
或
EXIT(
)
退出
isql。
CTRL+C
不退出
isql
而結束查詢。
僅當命令終止符
GO(默認)、RESET、ED、!!、EXIT、QUIT
和
CTRL+C
出現在一行的開始(緊跟
isql
提示符)時才可以被識別。isql
忽視同一行中這些關鍵字後輸入的任何內容。
10. 在cmd中,怎麼連接和執行sqlserver
1、打開CMD命令界面。