字元串sql資料庫庫
一:C# 連接SQL資料庫
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;
Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True;
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
1:Integrated Security參數
當設置Integrated Security為 True 的時候,連接語句前面的 UserID, PW 是不起作用的,即採用windows身份驗證模式。
只有設置為 False 或省略該項的時候,才按照 UserID, PW 來連接。
Integrated Security 還可以設置為:sspi ,相當於 True,建議用這個代替 True。
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=true;
Data Source=myServerAddress;Initial Catalog=myDataBase;;User ID=myUsername;Password=myPasswordIntegrated Security=false;
2:參數Trusted_Connection
Trusted_Connection=true,將使用當前的 Windows 帳戶憑據進行身份驗證
Trusted_Connection=false;將不採用信任連接方式(也即不採用Windows驗證方式),而改由SQL Server 2000驗證方式
Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=false;
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
3:Initial Catalog是你要連接的資料庫的名字
4:WINCE連接
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;User ID=myDomain\myUsername;Password=myPassword;
二:可以利用SqlConnectionStringBuilder,這樣不必去記住名稱。
SqlConnectionStringBuilder scsb = new SqlConnectionStringBuilder();
scsb.DataSource = @"(local)\SQLExpress";
scsb.IntegratedSecurity = true;
scsb.InitialCatalog = "Northwind";
SqlConnection myConnection = new SqlConnection(scsb.ConnectionString);
三:可以利用屬性中的Setting來自動設置連接字元串
1:在type中選擇 (connection string),
2:在DataSouce中選擇數據源,然後再Server中輸入伺服器名,本地用(local)\SQLExpress
3:選擇登陸驗證方式,本次選Windows驗證(即信任連接Integrated Security=True)
4:選擇資料庫名,確認即可
Data Source=(local)\SQLExpress;Initial Catalog=Northwind;Integrated Security=True
server = .\sqlexpress;integrated security = true;database = northwind
四:SQL2005遠程伺服器連接方法
如何打開sql server 2005 的1433埠:
配置工具->Sql Server Configuration Manager->MSSQLSERVER的協議看看TCP/IP協議是否啟動,如果啟動,右鍵菜單點"屬性" ,在分頁菜單中選"IP地址",把"IP1"和"IP2"中"TCP埠"為1433,"已啟用"改為"是"
配置工具->Sql Server Configuration Manager->SQL Native Client 配置->客戶端協議->TCP/IP選擇TCP/IP右鍵菜單中"屬性",確認"默認埠"是1433,"已啟用"為"是"。
SQL Server 2005 遠程連接配置TCP/IP屬性:
Surface Area Configuration --> Database Engine --> Remote Connections --->Using TCP/IT SQL Server 外圍應用配置器?服務和連接外圍配置?database englie?遠程連接?啟用(遠程連接的TCP/IP和named pipes)
SQL Server Configuration Manager?SQL2005網路配置?啟用TCP/IP和named pipes
其他說明見下: sqlserver2005(Express版),為了便於管理,你還需要去下一個manage管理器:
安裝好manage管理器後,在程序中連接sqlserver2005,下面幾點是要注意的。
1. 開啟sql2005遠程連接功能,開啟辦法如下, 配置工具->sql server外圍應用配置器->服務和連接的外圍應用配置器->打開MSSQLSERVER節點下的Database Engine 節點,先擇"遠程連接",接下建議選擇"同時使用TCP/IP和named pipes",確定後,重啟資料庫服務就可以了.
2.登陸設置改為,Sql server and windows Authentication方式同時選中,具體設置如下: manage管理器->windows Authentication(第一次用windows方式進去),->對象資源管理器中選擇你的數據伺服器--右鍵>屬性>security>Sql server and windows Authentication方式同時選中.
3:設置一個Sql server方式的用戶名和密碼,具體設置如下: manage管理器->windows Authentication>new query>sp_password null,'sa123456','sa' 這樣就設置了一個用戶名為sa ,密碼為:sa123456的用戶,下次在登陸時,可以用Sql server方式, 用戶名為sa ,密碼為:sa123456的用戶進資料庫了.
4: 做完上面三步後,這樣寫連接字元串就可以順利進入資料庫了,
(server=.\sqlexpress;uid=sa;pwd=sa123456;database=master";
五:SQL2000遠程伺服器連接方法
1:看ping 伺服器ip能否ping通。
2:在Dos或命令行下輸入telnet 伺服器IP 埠,看能否連通。 如telnet 202.114.100.100 1433 通常埠值是1433,因為1433是sql server 2000的對於Tcp/IP的默認偵聽埠。如果有問題,通常這一步會出問題。通常的提示是「……無法打開連接,連接失敗"。
如果這一步有問題,應該檢查以下選項。
1) 檢查遠程伺服器是否啟動了sql server 2000服務。如果沒有,則啟動。
2) 檢查伺服器端有沒啟用Tcp/IP協議,因為遠程連接(通過網際網路)需要靠這個協議。檢查方法是,在伺服器上打開 開始菜單-> 程序-> Microsoft SQL Server-> 伺服器網路實用工具,看啟用的協議里是否有tcp/ip協議,如果沒有,則啟用它。
3)檢查伺服器的tcp/ip埠是否配置為1433埠。仍然在伺服器網路實用工具里查看啟用協議裡面的tcp/ip的屬性,確保默認埠為1433,並且隱藏伺服器復選框沒有勾上。 事實上,如果默認埠被修改,也是可以的,但是在客戶端做 telnet測試時,寫伺服器埠號時必須與伺服器配置的埠號保持一致。如果隱藏伺服器復選框被勾選,則意味著客戶端無法通過枚舉伺服器來看到這台伺服器,起到了保護的作用,但不影響連接,但是Tcp/ip協議的默認埠將被隱式修改為2433,在客戶端連接時必須作相應的改變。
4)如果伺服器端操作系統打過sp2補丁,則要對windows防火牆作一定的配置,要對它開放1433埠,通常在測試時可以直接關掉windows防火牆(其他的防火牆也關掉最好)。
5)檢查伺服器是否在1433埠偵聽。如果伺服器沒有在tcp連接的1433埠偵聽,則是連接不上的。檢查方法是在伺服器的dos或命令行下面輸入netstat -a -n 或者是netstat -an,在結果列表裡看是否有類似 tcp 127.0.0.1 1433 listening 的項。如果沒有,則通常需要給sql server 2000打上至少sp3的補丁。其實在伺服器端啟動查詢分析器,輸入 select @@version 執行後可以看到版本號,版本號在8.0.2039以下的都需要打補丁。如果以上都沒問題,這時你再做telnet 伺服器ip 1433 測試,將會看到屏幕一閃之後游標在左上角不停閃動。恭喜你,你馬上可以開始在企業管理器或查詢分析器連接了。
3: 檢查客戶端設置程序-> Microsoft SQL Server -> 客戶端網路使用工具。像在伺服器網路實用工具里一樣,確保客戶端tcp/ip協議啟用,並且默認埠為1433(或其他埠,與伺服器端保持一致就行)。
4:在企業管理器里或查詢那分析器連接測試 企業管理器-> 右鍵SQlserver組-> 新建sqlserver注冊-> 下一步-> 寫入遠程IP-> 下一步-> 選Sqlserver登陸-> 下一步-> 寫入登陸名與密碼(sa,password)-> 下一步-> 下一步-> 完成 查詢分析器-> 文件-> 連接-> 寫入遠程IP-> 寫入登錄名和密碼(sa,password)-> 確定通常建議在查詢分析器里做,因為默認情況下,通過企業管理器注冊另外一台SQL Server的超時設置是4秒,而查詢分析器是15秒。修改默認連接超時的方法: 企業管理器-> 工具-> 選項-> 在彈出的"SQL Server企業管理器屬性"窗口中,點擊"高級"選項卡-> 連接設置-> 在 登錄超時(秒) 後面的框里輸入一個較大的數字查詢分析器-> 工具-> 選項-> 連接-> 在 登錄超時(秒) 後面的框里輸入一個較大的數字通常就可以連通了,如果提示錯誤,則進入下一步。
5:錯誤產生的原因通常是由於SQL Server使用了"僅 Windows"的身份驗證方式,因此用戶無法使用SQL Server的登錄帳戶(如 sa )進行連接。解決方法如下所示:
1) 在伺服器端使用企業管理器,並且選擇"使用 Windows 身份驗證"連接上 SQL Server。
2) 展開"SQL Server組",滑鼠右鍵點擊SQL Server伺服器的名稱,選擇"屬性",再選擇"安全性" 選項卡。
3)在"身份驗證"下,選擇"SQL Server和 Windows "。
4) 重新啟動SQL Server服務。(在dos或命令行下面net stop mssqlserver停止服務,net start mssqlserver啟動服務,也是一種快捷的方法)。
Ⅱ SQL資料庫連接字元串修改
"Provider=SQLOLEDB;Data
Source=serverName;"Initial
Catalog=databaseName;
User
ID=userName;Password=userPassword;"
關鍵字
說明
Provider
指定
OLE
DB
Provider
for
SQL
Server。
Data
Source
或
Server
指定伺服器的名稱。
Initial
Catalog
或
Database
指定伺服器上的資料庫名稱。
User
ID
或
uid
指定用戶名(用於
SQL
Server
Authentication)。
Password
或
pwd
指定用戶密碼(用於
SQL
Server
Authentication)。
Ⅲ sql資料庫截取字元串函數
SQL截取字元串函數:
A.截取從字元串左邊開始N個字元
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.xrss.cn'
Select
Left(@S1,4)
------------------------------------
顯示結果:
http
B.截取從字元串右邊開始N個字元(例如取字元www.163.com)
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.163.com'
Select
right(@S1,11)
------------------------------------
顯示結果:
www.163.com
C.截取字元串中任意位置及長度(例如取字元www)
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.xrss.cn'
Select
SUBSTRING(@S1,8,3)
------------------------------------
顯示結果:
www
以上例子皆是已知截取位置及長度,下面介紹未知位置的例子
2.截取未知位置的函數
A.截取指定字元串後的字元串(例如截取http://後面的字元串)
方法一:
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.xrss.cn'
Select
Substring(@S1,CHARINDEX('www',@S1)+1,Len(@S1))
------------------------------------
顯示結果:
www.163.com
需要注意:CHARINDEX函數搜索字元串時,不區分大小寫,因此CHARINDEX('www',@S1)也可以寫成CHARINDEX('WWW',@S1)
方法二:(與方法一類似)
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.xrss.cn'
Select
Substring(@S1,PATINDEX('%www%',@S1)+1,Len(@S1))
--此處也可以這樣寫:Select
Substring(@S1,PATINDEX('%//%',@S1)+2,Len(@S1))
------------------------------------
顯示結果:
www.163.com
函數PATINDEX與CHARINDEX區別在於:前者可以參數一些參數,增加查詢的功能
方法三:
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.xrss.cn'
Select
REPLACE(@S1,'http://','')
------------------------------------
顯示結果:
www.163.com
利用字元替換函數REPLACE,將除需要顯示字元串外的字元替換為空
方法四:
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='http://www.xrss.cn'
Select
STUFF(@S1,CHARINDEX('http://',@S1),Len('http://'),'')
------------------------------------
顯示結果:
www.163.com
函數STUFF與REPLACE區別在於:前者可以指定替換范圍,而後者則是全部范圍內替換
B.截取指定字元後的字元串(例如截取C:\Windows\test.txt中文件名)
與A不同的是,當搜索對象不是一個時,利用上面的方法只能搜索到第一個位置
方法一:
以下是代碼片段:
Declare
@S1
varchar(100)
Select
@S1='C:\Windows\test.txt'
select
right(@S1,charindex('\',REVERSE(@S1))-1)
-------------------------------------
顯示結果:
text.txt
利用函數REVERSE獲取需要截取的字元串長度
Ⅳ asp.net連接sql資料庫的連接字元串怎麼寫啊
連接資料庫文件
<addname="LocalSqlServer"connectionString="DataSource=.SQLExpress;IntegratedSecurity=True;AttachDBFilename=|DataDirectory|TimeTracker.mdf;UserInstance=true"/>
SqlConnectionStringBuilder實例化時,要用到connectionString,如:
=newSqlConnectionStringBuild(connectionString);
一、Data Source
SqlConnectionStringBuilder的DataSource屬性,對應connectionString中的Data Source,「Data Source」可以由下列字元串代替:「server」,「address」,「addr」和「network address」。
Data Source=.SQLExpress也可以寫成這樣Data Source=(local)SQLExpress。
二、Integrated Security
SqlConnectionStringBuilder的IntegratedSecurity屬性,對應connectionString中的Integrated Security,「Integrated Security」可以寫成「trusted_connection」,為true時,使用當前的 Windows 帳戶憑據進行身份驗證,為false時,需要在連接中指定用戶 ID 和密碼。
三、AttachDBFilename
SqlConnectionStringBuilder的AttachDBFilename屬性,對應connectionString中的AttachDBFilename,「AttachDBFilename」可以寫成「extended properties」,「initial file name」。AttachDbFileName屬性指定連接打開的時候動態附加到伺服器上的資料庫文件的位置。這個屬性可以接受資料庫的完整路徑和相對路徑(例如使用|DataDirectory|語法),在運行時這個路徑會被應用程序的App_Data目錄所代替。
四、User Instance
SqlConnectionStringBuilder的UserInstance屬性,對應connectionString中的User Instance ,該值指示是否將連接從默認的 SQL Server Express 實例重定向到在調用方帳戶之下運行並且在運行時啟動的實例。UserInstance=true,在這種情況下,SQLServerExpress為了把資料庫附加到新的實例,建立一個新的進程,在打開連接的用戶身份下運行。在ASP.NET應用程序中,這個用戶是本地的ASPNET帳號或默認的NetworkService,這依賴於操作系統。為了安全地附加非系統管理員帳號(例如ASP.NET帳號)提供的資料庫文件,建立一個獨立的SQLServer用戶實例是必要的。
示例:
多數都是在CONFIG文件里寫入連接字元串
<appSettings>
<!--連接資料庫伺服器-->
<addkey="CRMonnection"value="DataSource=Sufei;InitialCatalog=CRM;IntegratedSecurity=false;uid=nouter;Password=123456"></add>
<addkey="ForumName"value="luohe"/>
<!--連接資料庫文件-->
<addkey="CRMConnectionString"value="DataSource=.SQLEXPRESS;AttachDbFilename=|DataDirectory|CRM.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstance=True"/>
</appSettings>
然後,在程序里再讀取連接字元串到變數
System.Configuration.ConfigurationSettings.AppSettings["CRMConnectionString"];
Ⅳ SQL 資料庫 數據類型 固定長度的字元串怎麼定義
數據類型
在
Microsoft®
SQL
Server™
中,每個列、局部變數、表達式和參數都有一個相關的數據類型,這是指定對象可持有的數據類型(整型、字元、money
等等)的特性。SQL
Server
提供系統數據類型集,定義了可與
SQL
Server
一起使用的所有數據類型。下面列出系統提供的數據類型集。
可以定義用戶定義的數據類型,其是系統提供的數據類型的別名。有關用戶定義的數據類型的更多信息,請參見
sp_addtype
和創建用戶定義的數據類型。
當兩個具有不同數據類型、排序規則、精度、小數位數或長度的表達式通過運算符進行組合時:
通過將數據類型的優先順序規則應用到輸入表達式的數據類型來確定所得值的數據類型。有關更多信息,請參見數據類型的優先順序。
如果結果數據類型為
char、varchar、text、nchar、nvarchar
或
ntext,則結果值的排序規則由排序規則的優先順序規則決定。有關更多信息,請參見排序規則的優先順序。
結果的精度、小數位數及長度取決於輸入表達式的精度、小數位數及長度。有關更多信息,請參見精度、小數位數和長度。
SQL
Server
為
SQL-92
兼容性提供了數據類型同義詞。有關更多信息,請參見數據類型同義詞。
精確數字
整數
bigint
從
-2^63
(-9223372036854775808)
到
2^63-1
(9223372036854775807)
的整型數據(所有數字)。
int
從
-2^31
(-2,147,483,648)
到
2^31
-
1
(2,147,483,647)
的整型數據(所有數字)。
smallint
從
-2^15
(-32,768)
到
2^15
-
1
(32,767)
的整數數據。
tinyint
從
0
到
255
的整數數據。
bit
bit
1
或
0
的整數數據。
decimal
和
numeric
decimal
從
-10^38
+1
到
10^38
–1
的固定精度和小數位的數字數據。
numeric
功能上等同於
decimal。
money
和
smallmoney
money
貨幣數據值介於
-2^63
(-922,337,203,685,477.5808)
與
2^63
-
1
(+922,337,203,685,477.5807)
之間,精確到貨幣單位的千分之十。
smallmoney
貨幣數據值介於
-214,748.3648
與
+214,748.3647
之間,精確到貨幣單位的千分之十。
近似數字
float
從
-1.79E
+
308
到
1.79E
+
308
的浮點精度數字。
real
從
-3.40E
+
38
到
3.40E
+
38
的浮點精度數字。
datetime
和
smalldatetime
datetime
從
1753
年
1
月
1
日到
9999
年
12
月
31
日的日期和時間數據,精確到百分之三秒(或
3.33
毫秒)。
smalldatetime
從
1900
年
1
月
1
日到
2079
年
6
月
6
日的日期和時間數據,精確到分鍾。
字元串
char
固定長度的非
Unicode
字元數據,最大長度為
8,000
個字元。
varchar
可變長度的非
Unicode
數據,最長為
8,000
個字元。
text
可變長度的非
Unicode
數據,最大長度為
2^31
-
1
(2,147,483,647)
個字元。
Unicode
字元串
nchar
固定長度的
Unicode
數據,最大長度為
4,000
個字元。
nvarchar
可變長度
Unicode
數據,其最大長度為
4,000
字元。sysname
是系統提供用戶定義的數據類型,在功能上等同於
nvarchar(128),用於引用資料庫對象名。
ntext
可變長度
Unicode
數據,其最大長度為
2^30
-
1
(1,073,741,823)
個字元。
二進制字元串
binary
固定長度的二進制數據,其最大長度為
8,000
個位元組。
varbinary
可變長度的二進制數據,其最大長度為
8,000
個位元組。
image
可變長度的二進制數據,其最大長度為
2^31
-
1
(2,147,483,647)
個位元組。
其它數據類型
cursor
游標的引用。
sql_variant
一種存儲
SQL
Server
支持的各種數據類型(text、ntext、timestamp
和
sql_variant
除外)值的數據類型。
table
一種特殊的數據類型,存儲供以後處理的結果集。
timestamp
資料庫范圍的唯一數字,每次更新行時也進行更新。
uniqueidentifier
全局唯一標識符
(GUID)。
請參見
CREATE
PROCEDURE
CREATE
TABLE
DECLARE
@local_variable
EXECUTE
表達式
函數
LIKE
SET
sp_bindefault
sp_bindrule
sp_droptype
sp_help
sp_rename
sp_unbindefault
sp_unbindrule
使用
Unicode
數據