data source 和initial catalog

initial catalog与database的区别是什么
Initial Catalog: 
DataBase: 
两者没有任何区别只是名称不一样,就好像是人类的真实姓名与曾用名一样。。都可以叫你。

********************************************

Integrated Security=SSPI 这个表示以当前WINDOWS系统用户身去登录SQL SERVER服务器,如果SQL SERVER服务器不支持这种方式登录时,就会出错。 
你可以使用SQL SERVER的用户名和密码进行登录,如: 
"Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=数据库名;Data Source=192.168.0.1;User ID=sa;Password=密码"

***************************************************

Integrated Security - 或 - Trusted_Connection ‘false‘ 当为 false 时,将在连接中指定用户 ID 和密码。当为 true 时,将使用当前的 Windows 帐户凭据进行身份验证。 可识别的值为 true、false、yes、no 以及与 true 等效的 sspi(强烈推荐)。

*************************************************

ADO.net 中数据库连接方式 
System.Data.SqlClient.SqlConnection 
常用的一些连接字符串(C#代码):

SqlConnection conn = new SqlConnection( “Server=(local);Integrated Security=SSPI;database=Pubs“);

SqlConnection conn = new SqlConnection(“server=(local)\NetSDK;database=pubs;Integrated Security=SSPI“);

SqlConnection conn = new SqlConnection(“Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;“);

SqlConnection conn = new SqlConnection(“ data source=(local);initial catalog=xr;integrated security=SSPI; 
persist security info=False;workstation id=XURUI;packet size=4096; “);

SqlConnection myConn = new System.Data.SqlClient.SqlConnection(“Persist Security Info=False;Integrated 
Security=SSPI;database=northwind;server=mySQLServer“);

SqlConnection conn = new SqlConnection( “ uid=sa;pwd=passwords;initial catalog=pubs;data source=127.0.0.1;Connect Timeout=900“);

region "私有变量"

/// <summary>

/// 表示一个到数据库的打开的连接

/// </summary>

private System.Data.SqlClient.SqlConnection Con = new SqlConnection();

/// <summary>

/// 表示执行对象是SQl还是存储过程

/// </summary>

private System.Data.SqlClient.SqlCommand Cmd = new SqlCommand();

/// <summary>

/// 表示用于填充 System.Data.DataSet 和更新数据库的一组数据命令和到数据库的连接

/// </summary>

private System.Data.SqlClient.SqlDataAdapter Dtapt = new SqlDataAdapter();

/// <summary>

/// 表示要在数据库中生成的事务

/// </summary>

private System.Data.SqlClient.SqlTransaction sqlTran;

/// <summary>

/// 提供从数据源读取数据行的只进流的方法

/// </summary>

private SqlDataReader dtrValue = null;

#endregion

#region"数据库连接处理"

/// <summary>

/// 获得webconfig中的 默认 Sql连接字符串

/// </summary>

private string strConSql

{

get

{

return System.Configuration.ConfigurationManager.AppSettings["SQLConntionStr"].ToString();

}

}

#endregion

#region "事务处理"

/// <summary>

/// 开始事务

/// </summary>

public void BeginTransaction()

{

if (Con.State == ConnectionState.Closed)

{

//打开连接

OpenCn();

//开始事务

if (sqlTran == null)

{

sqlTran = Con.BeginTransaction();

}

Cmd.Transaction = sqlTran;

}

}

/// <summary>

/// 提交事务

/// </summary>

public void CommitTransection()

{

sqlTran.Commit();

sqlTran.Dispose();

sqlTran = null;

CloseCn();

}

/// <summary>

/// 回滚事务

/// </summary>

public void RollbackTransection()

{

sqlTran.Rollback();

sqlTran.Dispose();

sqlTran = null;

CloseCn();

}

#endregion

#region"返回分页表数据Datatable [Read] 方式获取数据,数据量建议在查询结果在10000条记录内"

/// <summary>

/// 用于分页控件,返回需要显示页的数据和记录条数

/// </summary>

/// <param name="p_strSql">SQL语句</param>

/// <param name="p_CmdParms">SQL参数和其对应值</param>

/// <param name="p_intStart">开始记录</param>

/// <param name="p_intPageSize">每页显示记录条数</param>

/// <param name="out_intCount">返回记录条数</param>

/// <returns>查询数据集</returns>

protected DataTable ExecuteReadTable(string p_strSql, SqlParameter[] p_CmdParms, int p_intStart, int p_intPageSize, ref  int out_intCount)

{

return ExecuteReadTable(CommandType.Text, p_strSql, p_CmdParms, p_intStart, p_intPageSize, ref out_intCount);

}

/// <summary>

/// 1. 根据存储过程和参数值得到DataTable 值

/// 2. 根据SQL的得到DataTable 值

/// </summary>

/// <param name="p_objCmdType">是存储过程还是SQL</param>

/// <param name="p_intStart">开始记录</param>

/// <param name="p_intPageSize">每页显示条数</param>

/// <param name="p_strSql">可是是SQL 也可以是存储过程</param>

/// <param name="p_CmdParms">SqlParameter参数列表</param>

/// <param name="out_intCount">返回总记录数</param>

/// <returns>返回DataTable</returns>

protected DataTable ExecuteReadTable(CommandType p_objCmdType, string p_strSql, SqlParameter[] p_CmdParms, int p_intStart, int p_intPageSize, ref  int out_intCount)

{

DataTable dtb = new DataTable();

DateTime dtStart = DateTime.Now;

dtrValue = ExecuteReader(p_objCmdType, p_strSql, p_CmdParms);

if (dtrValue == null)

{

CloseCn();

return dtb;

}

int intColLength = dtrValue.FieldCount;

for (int i = 0; i < intColLength; i++)

{

//构造sql的table

dtb.Columns.Add(dtrValue.GetName(i), GetColType(i));

}

DataRow dr;

int k = 0;

if (dtrValue.HasRows)

{

//读取数据行值

while (dtrValue.Read())

{

//读取分页间数据

if (p_intStart <= k && k < p_intStart + p_intPageSize)

{

dr = dtb.NewRow();

//读取每列值

for (int j = 0; j < intColLength; j++)

{

//读取每列的值

dr[dtrValue.GetName(j)] = GetValue(j, GetFieldType(j).ToString());

}

dtb.Rows.Add(dr);

}

k++;

}

//删除了当前页所有数据则读上一页数据

if (k <= p_intStart)

{

while (k <= p_intStart)

{

p_intStart = p_intStart - p_intPageSize;

}

k = 0;

dtrValue = ExecuteReader(p_objCmdType, p_strSql, p_CmdParms);

if (dtrValue.HasRows)

{

while (dtrValue.Read())

{

//读取分页间数据

if (p_intStart <= k && k < p_intStart + p_intPageSize)

{

dr = dtb.NewRow();

//读取每列值

for (int j = 0; j < intColLength; j++)

{

//读取每列的值

dr[dtrValue.GetName(j)] = GetValue(j, GetFieldType(j).ToString());

}

dtb.Rows.Add(dr);

}

k++;

}

}

}

}

CloseCn();

SEHR.BLL.Function.AddSQLLog.WriteLog(p_strSql, dtStart.TimeOfDay.ToString(), DateTime.Now.TimeOfDay.ToString(), Convert.ToString(DateTime.Now - dtStart));

if (out_intCount == 0)

{

out_intCount = k;//获得总行数并且返回到页面

}

return dtb;

}

#endregion

#region "ExecuteReader 执行SQL语句"

/// <summary>

/// ExecuteReader

/// </summary>

/// <param name="p_objCmdType">命令类型 1CommandType.Text SQL语句 2CommandType.StoredProcedure存储过程</param>

/// <param name="p_strSQL">命令类型 1 SQL语句 2存储过程名称</param>

/// <param name="p_CmdParms">SqlParameter</param>

/// <returns>SqlDataReader</returns>

private SqlDataReader ExecuteReader(CommandType p_objCmdType, string p_strSQL, SqlParameter[] p_CmdParms)

{

SqlDataReader dtrRet = null;

try

{

//打开连接

OpenCn();

//命令行连接

Cmd.Connection = Con;

Cmd.CommandText = p_strSQL;

//是SQL语句还是存储过程

Cmd.CommandType = p_objCmdType;

//循环CmdParms值

if (p_CmdParms != null)

{

foreach (SqlParameter objParm in p_CmdParms)

{

Cmd.Parameters.Add(objParm);

}

}

dtrRet = Cmd.ExecuteReader();

Cmd.Parameters.Clear();

return dtrRet;

}

catch (Exception e)

{

string strErr = string.Empty; //p_CmdParms 参数值

if (p_CmdParms != null)

{

foreach (SqlParameter objParm in p_CmdParms)

{

strErr += objParm.ParameterName + " =‘" + objParm.Value + "‘ ";

}

}

if (Con.State != ConnectionState.Closed && sqlTran == null)

{

Cmd.Parameters.Clear();

CloseCn();

}

// 写错误日志

SEHR.BLL.Function.AddMsgLog.AddError("SqlBase", e.Message + ""n"r SQL : " + p_strSQL + ""n"r 参数 : " + strErr, e.StackTrace);

return null;

}

finally

{

//如果连接打开并且没有事务和SqlDataReader事件 则关闭连接

if (Con.State != ConnectionState.Closed && sqlTran == null && dtrRet == null)

{

Cmd.Parameters.Clear();

CloseCn();

}

}

}

#endregion

时间: 2024-11-08 18:35:33

data source 和initial catalog的相关文章

解析数据库连接字符串 (将Data Source、Initial Catalog、User ID、Password取出)

private void AnalysisConnectionstring() { string tempStr = “Data Source=192.168.2.123;Initial Catalog=caxastat;Persist Security Info=True;User ID=sa;Password=sa;Pooling=true; Max Pool Size=40000;Connect Timeout=30”; string[] paras = tempStr.Split(';'

C# 连接SQL Server数据库的几种方式--server+data source等方式

本文转载自忙碌的布谷鸟  如何使用Connection对象连接数据库? 对于不同的.NET数据提供者,ADO.NET采用不同的Connection对象连接数据库.这些Connection对象为我们屏蔽了具体的实现细节,并提供了一种统一的实现方法. Connection类有四种:SqlConnection,OleDbConnection,OdbcConnection和OracleConnection. SqlConnection类的对象连接SQL Server数据库:OracleConnectio

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: &quot;Too many connections&quot;

最简单的办法是因为你的my.ini中设定的并发连接数太少或者系统繁忙导致连接数被占满解决方式:打开MySQL安装目录打开MY.INI找到max_connections默认是100 .--实例 WINDOWS解决mysql Errno.: 1040错误XXXX info: Can not connect to MySQL server User: rootTime: 2004-5-20 3:00pmScript: /XXXX/XXXX.PHP Error: Too many connections

Configuring the WebSphere Application Server data source

Configuring the WebSphere Application Server data source Version WebSphere Application Server 7.0.0.x   WebSphere Application Server 8.0.0.x Installed applications use data sources as resources to obtain connection to relational databases. To create

Data source rejected establishment of connection, message from server: &quot;Too many connections&quot;

错误描述: 测试一段时间没有任何问题,今天突然用户无法登录,报错如Data source rejected establishment of connection,  message from server: "Too many connections" 错误原因: 太多的连接数,登录用户过多,配置的mysql连接数过小,或者某些连接没有关闭,导致连接数过大. 问题的解决: 修改mysql的my.ini配置文件,网上的说法:mysql安装目录下的my.ini中设定的并发连接数太少或者系

[转] --- Error: “A field or property with the name was not found on the selected data source” get only on server

Error: “A field or property with the name was not found on the selected data source” get only on server up vote4down votefavorite2I publish my project without any warning on local iis and it works correctly (localhost/[myprojectName]). so, i upload t

Create Data Source when using DataBase

Open the control panel. Open "Administrator Tools" ? 3. Open "Data Source(ODBC)" and Select "Add" ? 4. Select "MySQL ODBC 5.3 Unicode Driver" or "MySQL ODBC ANDI Driver" and then "Finish" ? 5. De

mysql: Data source rejected establishment of connection, message from server: &quot;Too many connections&quot;

http://www.oschina.net/question/558677_66703 com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Data source rejected establishment of connection,  message from server: "Too many connections" "Too many connections"错误 尝试加大 M

C#语言实现ArcGIS数据源重置之Set Data Source功能

1.须要:依据选择的Mxd路径和目标数据源路径进行重置数据源.此处以(.Mdb为例): 主要利用到的接口: (1)IMapDocument    (2)IMapControl2     (3)IWorkspaceFactory        (4)IWorkspace   (5)IEnumDataset (6)IDataset               (7)ISpatialReference   (8)UID        (9)IEnumLayer           (10)IFeatu