
为了避免再次被说标题党,这里先说明些事情:
第一,android没法直接连接SQLServer,起码我没有发现方法,想想看,sqlserver安装之后有多大,android程序是跑在手机上的,想让程序直接访问sqlserver,那手机要多大的内存?
第二,本文是通过一个“桥梁”——webservice来间接访问SQLServer的,当然还有其他方法,感兴趣的同学可以自行百度。
如果理解了上面两点,好了咱们继续。
教程会拿一个具体的例子来讲,一步一步来,也许细节上还可以继续加工,但大致的流程就是这样的。
本教程有五个部分:
项目说明
开发环境部署
数据库设计
服务器端程序设计
客户端(android端)程序设计
项目说明
这个项目意在实现一个简单的android连接Sqlserver的功能。
就做一个简单的库存管理功能,包括对仓库内现有货物的查看、货物信息的增加&删除。
访问数据库有两种方式:
Windows身份验证登录(不需要用户名和密码,适用于访问本地数据库,应用程序和SQL软件安装在同一台服务器)
SQL Server 身份验证登录(适用于访问其他计算机的数据库,当然也可以用这种方式访问本地数据库)
根据楼主的情况应该用 SQL Server 身份验证登录
数据库连接字符串一般写在 connectionStrings节点下,非强制性(如写在appsettings节点下),只不过这样可以用
ConfigurationManagerConnectionStrings["connString"]ConnectionString;
方便访问
以下是笔者的一个 webconfig 文件的内容
<xml version="10" encoding="utf-8" >
<configuration>
<connectionStrings>
<add name="connString" connectionString="Data Source=;Initial Catalog=TestDatabase;Integrated Security=SSPI"/>
</connectionStrings>
</configuration>
附:数据库连接字符串的写法
SQL Server connection strings
SQL ODBC connection strings
Standard Security:< br> "Driver={SQLServer};Server=Your_Server_Name;Database=Your_Database_Name;Uid=Your_Username;Pwd=Your_Password;"
Trusted connection:< br> "Driver={SQLServer};Server=Your_Server_Name;Database=Your_Database_Name;Trusted_Connection=yes;"
SQL OLE DB connection strings
Standard Security:
"Provider=SQLOLEDB;Data Source=Your_Server_Name;Initial Catalog= Your_Database_Name;UserId=Your_Username;Password=Your_Password;"
Trusted connection:
"Provider=SQLOLEDB;Data Source=Your_Server_Name;Initial Catalog=Your_Database_Name;Integrated Security=SSPI;"
SQL OleDbConnection NET strings
Standard Security:
"Provider=SQLOLEDB;Data Source=Your_Server_Name;Initial Catalog= Your_Database_Name;UserId=Your_Username;Password=Your_Password;"
Trusted connection:
"Provider=SQLOLEDB;Data Source=Your_Server_Name;Initial Catalog=Your_Database_Name;Integrated Security=SSPI;"
SQL SqlConnection NET strings
Standard Security:
1 "Data Source=Your_Server_Name;Initial Catalog= Your_Database_Name;UserId=Your_Username;Password=Your_Password;" < br>2 "Server=Your_Server_Name;Database=Your_Database_Name;UserID=Your_Username;Password=Your_Password;Trusted_Connection=False"
Trusted connection:
1 "Data Source=Your_Server_Name;Initial Catalog=Your_Database_Name;Integrated Security=SSPI;"
2"Server=Your_Server_Name;Database=Your_Database_Name;Trusted_Connection=True;"
希望回答对你有帮助
先打开vs2010软件,找到项目文件,双击webconfig
vs2010中webconfig配置数据库连接
第一种:取连接字符串
string
connstring
=
systemwebconfigurationwebconfigurationmanagerconnectionstrings["sqlconnstr"]connectionstring;
或者
protected
static
string
connectionstring
=
configurationmanagerconnectionstrings["sqlconnstr"]connectionstring;
webconfig文件:加在</configsections>后面
<connectionstrings>
<remove
name="localsqlserver"
/>
<add
name="sqlconnstr"
connectionstring="user
id=xx;password=xx;initial
catalog=database_name;data
source=\sqlxxxx"
/>
</connectionstrings>
vs2010中webconfig配置数据库连接
第二种:取连接字符串:
string
myvar=configurationsettingsappsettings["connstring"];
webconfig文件:加在<appsettings>和</appsettings>
之间
<appsettings>
<add
key="connstring"
value="uid=xx;pwd=xx;database=batabase_name;server=(local)"
/>
</appsettings>
据说两者通用,但是第二种是aspnet20的新特性,建议使用第二种。其实我一直有个疑问,两个字符串中的uid;pwd;和user
id;
password;是否等价。根据网上我查到的资料是可以互换通用的。
vs2010中webconfig配置数据库连接
连接sql
server数据库的机制与连接access的机制没有什么太大的区别,只是改变了connection对象和连接字符串中的不同参数
首先,连接sql
server使用的命名空间不是"systemdataoledb",而是"systemdatasqlclient"
其次就是他的连接字符串了,我们一个一个参数来介绍(注意:参数间用分号分隔):
"user
id=sa":连接数据库的验证用户名为sa他还有一个别名"uid",所以这句我们还可以写成"uid=sa"
"password=":连接数据库的验证密码为空他的别名为"pwd",所以我们可以写为"pwd="
这里注意,你的sql
server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录如果你的sql
server设置为windows登录,那么在这里就不需要使用"user
id"和"password"这样的方式来登录,而需要使用"trusted_connection=sspi"来进行登录
initial
catalog=northwind":使用的数据源为"northwind"这个数据库他的别名为"database",本句可以写成"database=northwind"
"server=yoursqlserver":使用名为"yoursqlserver"的服务器他的别名为"data
source","address","addr"如果使用的是本地数据库且定义了实例名,则可以写为"server=(local)\实例名";如果是远程服务器,则将"(local)"替换为远程服务器的名称或ip地址
"connect
timeout=30":连接超时时间为30秒
在这里,建立连接对象用的构造函数为:sqlconnection
7
最后要保存你所更改的文件,右键
保存(ctrl+s)
1)利用PHP的数据库函数连接�
这里主要用到四个数据库函数:�
mysql_connect ()建立与MySQL服务器的连接。�
mysql_select_db ():选择MySQL服务器中的数据库供以后的数据查询 *** 作query处理。 mysql_query ():送出query字符串以帮助MySQL做相关的处理或执行。�
mysql_fetch_row ():用来将查询结果result单行移到数组变量中。数组的索引是数字
索引,第一个索引值是0。�
2)通过ODBC连接�
PHP通过ODBC连接MySQL数据库主要用到四个函数:�
Odbc_connect ():用来同ODBC数据源建立连接。�
Odbc_do ():用来在建立连接之后执行数据库查询。�
Odbc_result():用于取得当前记录行中某个字段的值。�
Odbc_fetch_row ():用来把查询结果保存到数组,每个数组元素对应一条记录。�
上述两种方法在与数据库建立连接的语法上,并没有太大差别。不过在相比较之下,通过ODBC方式存取数据库比PHP直接存取MySQL耗时间,但通过ODBC接口存取数据库不必担心使用何种数据库,如Oracle,Informix,Sybase 等。它们都支持ODBC接口,这样可减少更换数据库时需要更改程序的问题。
JAVA Web开发中与数据库的连接 *** 作,配置:
1、新建数据库。
新建登录角色,在新建数据库的时候把数据库的所有权交给你新建的角色。用用户和密码控制数据库。保证数据库的安全。
2、编写contextxml文件 Xml文件的目的是封装用户和密码,也是封装的一种,方便 *** 作。
以下为contextxml文件样例:
<xml version="10" encoding="utf-8">
<Context reloadable = "true">
<Resource
name="jdbc/sampleHS"
type="javaxsqlDataSource"
maxActive="14"
maxIdle="10"
username="hstaoshu"
maxWait="5000"
driverClassName="orgpostgresqlDriver"
password="hstaoshu"
url="jdbc:postgresql://localhost:5432/hstaoshu"/>
</Context>
详细说明:
name="jdbc/sampleHS"里面的ssampHS是可改名称,建议根据需要自己命名;
username="hstaoshu"
password="hstaoshu"此两项为你新建的数据库登录角色用户名和密码信息,只有匹配 了才能访问。这里简单为了表示,把用户名和密码弄成了跟数据库名字一样。其实这是很不安全的。
url="jdbc:postgresql://localhost:5432/hstaoshu"/>
这是连接数据库的URl,就像访问网站的地址一样。没有这个是无法访问数据库的。localhost:5432表示本地端口。一般不需要改动,如果你在配置数据库的时候改动过端口,那么你需要把它改回来。/hstaoshu是你的数据库名称。
其他选项请勿擅自改动。
3、编写DAO类。
DAO类的作用是与数据连接后,对数据库的一些 *** 作的封装。封装的作用。为了更好的数据管理。
DAO是真正如何使用数据库的关键步骤,前两步只是部署和配置。
private static InitialContext context = null;
private DataSource dataSource = null;
//一般把跟数据库的连接放在DAO类的构造函数里,只要被实例化,就能和数据库连接。
public BookDAO() {
try {
if (context == null) {
context = new InitialContext();
}
dataSource = (DataSource) contextlookup("java:comp/env/jdbc/sampleHS");
// 连接数据库,前面在contextxml文件配置里的URl
} catch (NamingException e2) {
e2printStackTrace();
}
}
public Connection getConnection() {
Connection conn = null;
try {
conn = dataSourcegetConnection();// 获得数据源的连接对象
} catch (SQLException e) {
eprintStackTrace();
}
return conn;
}
做完上面的三步 *** 作,开发环境已经完全和数据库连接OK,可以开始数据库的 *** 作了。一般来说,对数据库的 *** 作语句都是提前封装好的。这样修改起来会对下面的代码影响降到最小。
如下:
// ------------------数据库 *** 作语句代码封装------------------
/ 查看所有图书 /
private static final String SELECT_ALL_SQL = "SELECT FROM book";
那么在使用的时候只要直接调用:
pstmt = connprepareStatement(SELECT_ALL_SQL);
我现在开发的软件就是利用ksoap与webservice之间通信,你可以看看ksoap的API。。。
其实很简单,假设webservice与数据通信,设置一个service接口。android端通过ksoap调用webservice接口传入各种参数(url、wsdl)
加油哦!~
以上就是关于webservice服务端怎么访问数据库全部的内容,包括:webservice服务端怎么访问数据库、C# web Web.config里sql连接数据库、怎样用webapi连接到数据库的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)