JOracle
人都是逼出来的(=o=)

2008年8月25日

web.config connectionStrings 数据库连接字符串的解释

先来看一下默认的连接SQL Server数据库配置
<connectionStrings>
   <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
</connectionStrings>

SqlConnectionStringBuilder实例化时需要使用connectionString。如:SqlConnectionStringBuild builder = new SqlConnectionStringBuild(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 中的I ntegrated Security,“Integrated Security”可以写成“trusted_connection”。
为 True 时,使用当前的 Windows 帐户凭据进行身份验证,为 False 时,需要在连接中指定用户 ID 和密码。可识别的值为 True、False、Yes、No 以及与 True 等效的 SSPI。
如果没有些则必须写上 uid=sa;pwd=123 之类的设置“uid”也可使用“User ID”,“pwd”也可换为“PassWord”。

SSPI:Microsoft安全支持提供器接口(SSPI)是定义得较全面的公用API,用来获得验证、信息完整性、信息隐私等集成安全服务,以及用于所有分布式应用程序协议的安全方面的服务。
应用程序协议设计者能够利用该接口获得不同的安全性服务而不必修改协议本身。

三、AttachDBFilename
SqlConnectionStringBuilder 的 AttachDBFilename 属性,对应 connectionString 中的 AttachDBFilename,“AttachDBFilename”可以写成“extended properties”,“initial file name”。
AttachDbFileName 属性指定连接打开的时候动态附加到服务器上的数据库文件的位置。
这个属性可以接受数据库的完整路径和相对路径(例如使用|DataDirectory|语法),在运行时这个路径会被应用程序的 App_Data 目录所代替。

四、User Instance
SqlConnectionStringBuilder 的 UserInstance 属性,对应 connectionString 中的 User Instance ,该值指示是否将连接从默认的 SQL Server 实例重定向到在调用方帐户之下运行并且在运行时启动的实例。
UserInstance=true 时,SQLServerExpress 为了把数据库附加到新的实例,建立一个新的进程,在打开连接的用户身份下运行。
在 ASP.NET 应用程序中,这个用户是本地的 ASPNET 帐号或默认的 NetworkService,这依赖于操作系统。
为了安全地附加非系统管理员帐号(例如ASP.NET帐号)提供的数据库文件,建立一个独立的 SQLServer 用户实例是必要的。

五、Initial Catalog 等同于 Database。

六、providerName 指定值“System.Data.OracleClient”,该值指定 ASP.NET 在使用此连接字符串进行连接时应使用 ADO.NET System.Data.OracleClient 提供程序。


PS:
DataDirectory是什么?

asp.net 2.0有一个特殊目录app_data,通常Sql Server 2005 express数据文件就放在这个目录,相应的数据库连接串就是:
connectionString="…… data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|data.mdf;User Instance=true"
这里有一个DataDirectory的宏,它表示什么意义呢?

DataDirectory是表示数据库路径的替换字符串。由于无需对完整路径进行硬编码,DataDirectory 简化了项目的共享和应用程序的部署。例如,无需使用以下连接字符串:
"Data Source= c:\program files\MyApp\app_data\Mydb.mdf"
通过使用|DataDirectory|(包含在如下所示的竖线中),即可具有以下连接字符串:
"Data Source = |DataDirectory|\Mydb.mdf" 。

不仅仅是Sql server 2005 express中使用,也可以在其它的文件数据库中使用,例如Sqllite数据库文件的连接字符串:

<add name="DefaultDB"
connectionString="DriverClass=NHibernate.Driver.SQLite20Driver;Dialect=NHibernate.Dialect.SQLiteDialect;Data Source=|DataDirectory|\data.db3" />


---------------------------------------    附加一些连接语句例子    ---------------------------------------

<--普通例子1-->
<configuration>
<connectionStrings>
    <add name="Sales" providerName="System.Data.SqlClient" connectionString="server=myserver;database=Products;uid=salesUser;pwd=sellMoreProducts" />

    <add name="NorthWind" providerName="System.Data.SqlClient" connectionString="server=.;database=NorthWind;Integrated Security=SSPI" />

</connectionStrings>
</configuration>

<--普通例子2-->
<configuration>
<connectionStrings>
    <add name="NorthWind" connectionString="Provider=SQLOLEDB;Integrated Security=SSPI;Initial Catalog=da;Data Source=bar" />
</configuration>

----------------------------------------------------------------------------------------------------------

<connectionStrings>
   <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Initial Catalog=NorthWind;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
</connectionStrings>
<--也可写为-->
<connectionStrings>
   <add name="LocalSqlServer" connectionString="Server=.\SQLExpress;Database=NorthWind;Integrated Security=Yes" providerName="System.Data.SqlClient" />
</connectionStrings>

----------------------------------------------------------------------------------------------------------

<configuration>
<connectionStrings>
    <add name="DB2005_2"
    providerName="System.Data.SqlClient"
    connectionString="Data Source=.;Initial Catalog=Northwind;User ID=dbtester;Password=zhi;Trusted_Connection=False;Connect Timeout=30;Min Pool Size=16;Max Pool Size=100"/>

    <add name="DB2005_1"
    providerName="System.Data.SqlClient"
    connectionString="Server=.;Database=Northwind;User ID=dbtester;Password=zhi;Trusted_Connection=False;Connect Timeout=30;Min Pool Size=16;Max Pool Size=100"/>

    <add name="Northword2000"
    providerName="System.Data.SqlClient"
    connectionString="Initial Catalog=Northwind;User ID=dbtester;PassWord=zhi;Persist Security Info=false;Data Source=(local);Connect Timeout=30;Min Pool Size=16;Max Pool Size=100;"/>

    <add name="SQLExp"
       providerName="System.Data.SqlClient"
       connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\northwnd1.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"/>
   
    <add name="Oracle"
      connectionString="Data Source=TEST;User ID=sa;Password=sa;"
      providerName="System.Data.OracleClient" />

    <add name="oleconn"
       providerName="System.Data.OleDb"
       connectionString="Provider=Microsoft.Jet.OleDb.4.0;Data Source=|DataDirectory|northwind.mdb"/>

    <add name="MySql"
    providerName="MySql.Data.MySqlClient"
    connectionString="Server=172.29.131.27;Port=3311;DataBase=comctl;Persist Security Info=False;User ID=root;Password=123456;Allow Zero Datetime=true;" />
</connectionStrings>
    <system.data>
        <DbProviderFactories>
            <add name="MySQL Data Provider"
                 invariant="MySql.Data.MySqlClient"
                 description=".Net Framework Data Provider for MySQL"
                 type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=5.2.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
        </DbProviderFactories>
    </system.data>
</configuration>

======================================      可以保存为(以下转自他处).cs      ======================================

using System.Data.SqlClient;
using System.Configuration;
public class Class1
{
    public Class1()
    {
        //Persist Security Info如果数据库连接成功后不再需要连接的密码,建议False
        //string sql2000 = "Initial Catalog=Northwind;User ID=dbtester;PassWord=zhi;Persist Security Info=false;Data Source=(local);Connect Timeout=30;Min Pool Size=16;Max Pool Size=100;";
        //string sql2000 = "Initial Catalog=Northwind;User ID=sa;PassWord=5;Persist Security Info=false;Data Source=.";
        //string sql2000 = "Initial Catalog=Northwind;User ID=sa;PassWord=5;Persist Security Info=false;Data Source=newtime";
        string source = "server=(local);integrated security=SSPI;database=Northwind";
        string expressSource = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\northwnd.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
        //Integrated Security采用windows的集成身份验证,integraged   Security=SSPI;
        //Integrated Security=SSPI 这个表示以当前WINDOWS系统用户身去登录SQL SERVER服务器,如果SQL SERVER服务器不支持这种方式登录时,就会出错
        //表示你的连接安全验证方式,可用trusted_connection=yes取代
        //Integrated Security 为 True。用户实例仅与集成安全性一起使用,带有用户名和密码的 SQL Server 用户不起作用。
        //string source3 = @"Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog= pubs;UserID=sa;Password=asdasd;";
        //(DBMSSOCN=TCP/IP instead of Named Pipes, at the end of the Data Source is the port to use (1433 is the default))
        //Standard Security:
        string source4 = "Data Source=Aron1;Initial Catalog= pubs;UserId=sa;Password=asdasd;";
        string source5 = "Server=Aron1;Database=pubs;UserID=sa;Password=asdasd;Trusted_Connection=False";
        //Trusted_Connection 'false' 当为 false 时,将在连接中指定用户 ID 和密码。当为 true 时,将使用当前的 Windows 帐户凭据进行身份验证。
        //可识别的值为 true、false、yes、no 以及与 true 等效的 sspi(强烈推荐)。所以一定要设置Trusted_Connection= false,以防被别人"登录"、"注入语句"等
        string source6 = "Data Source=Aron1;Initial Catalog=pubs;Integrated Security=SSPI;";
        string source7 = "Server=Aron1;Database=pubs;Trusted_Connection=True;";
        //(use serverName\instanceName as Data Source to use an specifik SQLServer instance, only SQLServer2000)
        //Integrated   Security或Trusted_Connection   'false'   当为   false   时,
        //将在连接中指定用户   ID   和密码。当为   true   时,将使用当前的   Windows   帐户凭据进行身份验证
        //VS2003:string connStr=System.Configuration.ConfigurationSettings.AppSettings["SQLCONNECTIONSTRING"];2003中用的
        //VS2005:string connStr=System.Configuration.ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ToString();2005-8中用
        System.Configuration.ConnectionStringSettings i = System.Configuration.ConfigurationManager.ConnectionStrings["Northword2000"];
    }
}
 

posted @ 2010-05-19 11:28 人在旅途 阅读(1622) | 评论 (0) | 编辑 收藏
 
Linux文件夹权限(转)
 先来了解一下文件属性,
在shell环境里输入:ls -l 可以查看当前目录文件。如:
drwxr-xr-x 2 nsf users 1024 12-10 17:37 下载文件备份
分别对应的是:
文件属性 连接数 文件拥有者 所属群组 文件大小 文件修改时间 文件名
这里r是可读,w可写,x 可执行,其中文件属性分为四段,---- --- --- 10个位置
例如:
  d   rwx   r-x  r-x
第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。
第二段是文件拥有者的属性,
第三段是文件所属群组的属性,
第四段是对于其它用户的属性,
如上面文件夹“下载文件备份” 的访问权限,表示文件夹“下载文件备份” 是一个目录文件;文件夹“下载文件备份” 的属主有读写可执行权限;与文件夹“下载文件备份” 属主同组的用户只有读和可执行权限;其他用户也有读和可执行权限。
确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。也可以利用chown命令来更改某个文件或目录的所有者。利用chgrp命令来更改某个文件或目录的用户组。
chmod 命令
  功能:chmod命令是非常重要的,用于改变文件或目录的访问权限.用户用它控制文件或目录的访问权限.
  语法:该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
  1. 文字设定法
  chmod [who] [+ | - | =] [mode] 文件名?
  参数:
  操作对象who可是下述字母中的任一个或者它们的组合:
  u 表示“用户(user)”,即文件或目录的所有者。
  g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
  o 表示“其他(others)用户”。
  a 表示“所有(all)用户”。它是系统默认值。
  操作符号可以是:
  + 添加某个权限。
  - 取消某个权限。
  = 赋予给定权限并取消其他所有权限(如果有的话)。

  设置mode所表示的权限可用下述字母的任意组合:
  r 可读。
  w 可写。
  x 可执行。
  X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
  s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用         户ID位,“g+s”设置组ID位。
  t 保存程序的文本到交换设备上。
  u 与文件属主拥有一样的权限。
  g 与和文件属主同组的用户拥有一样的权限。
  o 与其他用户拥有一样的权限。
  文件名:以空格分开的要改变权限的文件列表,支持通配符。
  在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example
  使同组和其他用户对文件example 有读权限。
chgrp命令
  功能:改变文件或目录所属的组。
  语法:chgrp [选项] group filename?
  该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。
  参数:
  - R 递归式地改变指定目录及其下的所有子目录和文件的属组。
  例1:$ chgrp - R book /opt/local /book
  改变/opt/local /book/及其子目录下的所有文件的属组为book。
chown 命令
  功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,root用户应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。
  语法:chown [选项] 用户或组 文件
  说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。
  参数:
  - R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。
  - v 显示chown命令所做的工作。
  例1:把文件shiyan.c的所有者改为wang。
  $ chown wang shiyan.c
  例2:把目录/his及其下的所有文件和子目录的属主改成wang,属组改成users。
  $ chown - R wang.users /his
posted @ 2009-07-29 14:37 人在旅途 阅读(360) | 评论 (0) | 编辑 收藏
 
oracle 导出建表sql和键索引sql
2TrLinux联盟用sqlplus链接数据库,运行以下命令
2TrLinux联盟
set pagesize 02TrLinux联盟
2TrLinux联盟
set long 900002TrLinux联盟
2TrLinux联盟
set feedback off2TrLinux联盟
2TrLinux联盟
set echo off 2TrLinux联盟
2TrLinux联盟
spool d:/get_schema.sql 2TrLinux联盟
2TrLinux联盟2TrLinux联盟
2TrLinux联盟
SELECT DBMS_METADATA.GET_DDL(TABLE,u.table_name)2TrLinux联盟
2TrLinux联盟
FROM USER_TABLES u;2TrLinux联盟
2TrLinux联盟
SELECT DBMS_METADATA.GET_DDL(INDEX,u.index_name)2TrLinux联盟
2TrLinux联盟
FROM USER_INDEXES u;2TrLinux联盟
2TrLinux联盟
spool off;
posted @ 2008-11-21 10:57 人在旅途 阅读(1850) | 评论 (0) | 编辑 收藏
 
ARRAYLIST对象的contains方法
ArrayList中存放的对象,他的contains方法 是调用对象的equals方法。
比较的是对象的地址是否相等。
我们可以重写对象里面的equals方法:
 //重写equals方法
    public   boolean   equals(Object   test)   {     //参数类型一定要是Object  
        if   (Integer.parseInt(this.id) ==Integer.parseInt(((ChatRoom)test).id))   { 
            return   true; 
        } 
        else   { 
            return   false; 
        } 
    }
变成之比较对象里面的id值是否相等。
posted @ 2008-10-27 14:58 人在旅途 阅读(719) | 评论 (0) | 编辑 收藏
 
group by
GROUP BY 是分组查询, 一般是和聚合函数配合使用.
group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面
posted @ 2008-08-25 11:10 人在旅途 阅读(180) | 评论 (0) | 编辑 收藏
 
 
<2008年8月>
日一二三四五六
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

 导航

  • BlogJava
  • 首页
  • 发新随笔
  • 发新文章
  • 联系
  • 聚合
  • 管理

 统计

  • 随笔: 46
  • 文章: 14
  • 评论: 27
  • 引用: 0

常用链接

  • 我的随笔
  • 我的文章
  • 我的评论
  • 我的参与
  • 最新评论

留言簿(1)

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔档案

  • 2010年5月 (1)
  • 2009年7月 (1)
  • 2008年11月 (1)
  • 2008年10月 (1)
  • 2008年8月 (1)
  • 2008年7月 (4)
  • 2008年3月 (4)
  • 2007年9月 (5)
  • 2007年7月 (2)
  • 2007年6月 (3)
  • 2007年5月 (1)
  • 2007年4月 (5)
  • 2007年3月 (1)
  • 2006年2月 (1)
  • 2006年1月 (3)
  • 2005年12月 (4)
  • 2005年10月 (5)
  • 2005年8月 (3)

文章档案

  • 2009年7月 (1)
  • 2008年10月 (1)
  • 2008年7月 (2)
  • 2008年4月 (1)
  • 2007年7月 (1)
  • 2007年4月 (1)
  • 2006年1月 (1)
  • 2005年10月 (2)
  • 2005年8月 (4)

收藏夹

  • drools(2) (rss)

搜索

  •  

积分与排名

  • 积分 - 30348
  • 排名 - 1377

最新评论

  • 1. re: jsp生成html文件
  • qchun100@163.com
  • --我也想要一份
  • 2. re: Oracle 导入导出命令(转)
  • ..
  • --pillow
  • 3. re: Oracle 导入导出命令(转)
  • 同上。
  • --粉丝机
  • 4. re: Oracle 导入导出命令(转)
  • 谢谢了。用命令导出,用sqlplus导入的,解决问题。
  • --竹子切片机
  • 5. re: Oracle 导入导出命令(转)
  • 路过,解决了。
  • --保健枕

阅读排行榜

  • 1. powerdesigner12 破解方法(2751)
  • 2. 正规式和有限自动机(转自csdn)(2398)
  • 3. oracle 导出建表sql和键索引sql(1850)
  • 4. web.config connectionStrings 数据库连接字符串的解释(1622)
  • 5. Oracle 导入导出命令(转)(1374)

评论排行榜

  • 1. powerdesigner12 破解方法(6)
  • 2. Oracle 导入导出命令(转)(4)
  • 3. 交叉表统计(1)
  • 4. JSP+JavaScript实现级联 不刷新页面(1)
  • 5. JSPCOUNTER(0)

Powered by: 博客园
模板提供:沪江博客
Copyright ©2025 人在旅途