1如果想快速开发,没有自己的服务器,还是推荐使用云API的数据云。
2不使用云API的数据云,可能是因为有web版且已经有商用数据。
3不使用云API的数据云,需自己写数据接口,即客户端发送请求接收处理与生成json数据给客户端进行交互。
4感谢APICloud提供新的APP开发方式。
其实也不难,使用apiajax进行请求即可。PHPer,以下使用演示使用PHP,数据库使用Mysql,JAVA党或者NET党请自行coding
[连接到数据库(文件放在服务器上),服务器端输出JSON]
<php
/
配置连接数据库信息
/
$host='localhost';//主机
$user='root';//数据库账号
$password='';//数据库密码
$database='test';//数据库名
//打开数据库连接
$db=mysqli_connect($host,$user,$password,$database);
//判断连接是否成功
if($db){
$db->query("set names utf8");//设置UTF-8编码(JSON的唯一编码)
}else{
echo 'DATABASE_CONNECTION_DIE';//数据库连接失败
exit;
}
//sql查询语句
$sql="select id,name,sex,age from person";
$result=$db->query($sql);
while($row=$result->fetch_assoc()){
$person_info[]=$row;//将取得的所有数据赋值给person_info数组
}
echo json_encode($person_info);//输出JSON
>
复制代码
输出的JSON示例:
[{"id":"1","name":"\u54c8\u5c3c","sex":"\u7537","age":"22"},{"id":"2","name":"\u5c0f\u9648","sex":"\u5973","age":"21"},{"id":"3","name":"\u5c0f\u767d","sex":"\u672a\u77e5","age":"1"}]
复制代码
[测试用的数据库SQL语句]
--
-- Database: `test`
--
-- --------------------------------------------------------
--
-- 表的结构 `person`
--
CREATE TABLE IF NOT EXISTS `person` (
`id` int(11) NOT NULL,
`name` varchar(5) NOT NULL,
`sex` varchar(2) NOT NULL,
`age` int(3) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- 转存表中的数据 `person`
--
INSERT INTO `person` (`id`, `name`, `sex`, `age`) VALUES
(1, '哈尼', '男', 22),
(2, '小陈', '女', 21),
(3, '小白', '未知', 1);
复制代码
搞定服务器端输出JSON后,重点来了
[端API使用apiajax读取接口数据]
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport"
content="maximum-scale=10,minimum-scale=10,user-scalable=0,width=device-width,initial-scale=10"/>
<title>test</title>
</head>
<body>
<button onclick="showPersonInfo()">点我获取数据</button>
</body>
<script type="text/javascript" src="/script/apijs"></script>
<script>
function showPersonInfo(){
apishowProgress();//显示加载进度框
//使用apiajax请求数据,具体使用方法和参数请看官方文档,这里使用get方法演示
apiajax({
url:'>
package orgwoodutil;
import javaioIOException;
import javaioInputStream;
import javasqlConnection;
import javasqlDriverManager;
import javasqlPreparedStatement;
import javasqlResultSet;
import javasqlSQLException;
import javautilProperties;
/
这是一个链接类:
注意:我这里使用的mssqlproperties文件保存连接数据库信息
该文件(mssqlproperties)必须放在src目录下
由于没有安装SqlServer 没有测试,
楼主可以自己测试一下(把此类,拷贝到你的项目中,创建好mssqlproperties文件)
运行本类,没有错误就是正确的了
有什么问题:可以邮箱:314819950@qqcom
@author Administrator
/
public class DBUtil2 {
public static Properties props;
public static String DRIVER_NAME="commicrosoftsqlserverjdbcSQLServerDriver";
public static String URL="jdbc:sqlserver://1721642234:1433;DatabaseName=0840software";
public static String USER="java2";
public static String PASSWORD="java2";
static{
props=new Properties();
try {
InputStream is=DBUtil2classgetClassLoader()getResourceAsStream("dbproperties");
propsload(is);
DRIVER_NAME=propsgetProperty("driver");
URL=propsgetProperty("url");
USER=propsgetProperty("user");
PASSWORD=propsgetProperty("pass");
ClassforName(DRIVER_NAME);
} catch (ClassNotFoundException e) {
eprintStackTrace();
} catch (IOException e) {
eprintStackTrace();
}
}
public static Connection getConnection() throws SQLException{
Connection con=DriverManagergetConnection(URL, USER, PASSWORD);
return con;
}
public static void close(ResultSet rs,PreparedStatement ps,Connection con) throws SQLException{
if(rs!=null){
rsclose();
}
if(ps!=null){
psclose();
}
if(con!=null){
conclose();
}
}
public static void main(String[] args) throws SQLException {
Systemoutprintln("测试获得连接: "+DBUtil2getConnection());
}
}
Set cn = New ADODBConnection
sqldata="Driver={Microsoft Access Driver (mdb)};DBQ=" & Servermappath("F:\vb数据\DataBase\DataBase2007mdb ")
cnOpen sqldata
Set adors = New ADODBRecordset
adorsOpen strsql, cn
MSFlexGrid1Rows = 1
While Not adorsEOF
MSFlexGrid1Rows = MSFlexGrid1Rows + 1
MSFlexGrid1Row = MSFlexGrid1Rows - 1
MSFlexGrid1Col = 0
MSFlexGrid1Text = adorsFields(0)
MSFlexGrid1Col = 1
MSFlexGrid1Text = adorsFields(1)
MSFlexGrid1Col = 2
MSFlexGrid1Text = adorsFields(2)
adorsMoveNext
Wend
android读取数据库可以使用sqlite一些api进行读取,实例如下:
/查找一条数据
@param uid
/
public User find(Integer uid){
SQLiteDatabase db=dbOpenHelpergetReadableDatabase(); //创建数据库辅助类
Cursor cursor =dbrawQuery("select from user where uid=", new String[]{uidtoString()}); //创建一个游标
if(cursormoveToFirst()){ //循环遍历查找数组
int uid2=cursorgetInt(cursorgetColumnIndex("uid"));
String uname=cursorgetString(cursorgetColumnIndex("uname"));
String uaddress=cursorgetString(cursorgetColumnIndex("uaddress"));
User user=new User();
usersetUid(uid2);
usersetUname(uname);
usersetUaddress(uaddress);
return user;
}
cursorclose();
return null;
}
建立FORM窗体,加个按钮控件,加一个DATAGRIDVIEW控件,双击FORM,加入命名空间using SystemDataOleDb; 双击按钮,进入按钮代码。
OleDbConnectionstrConnectionnewOleDbConnection("Provider=MicrosoftJetOLEDB40;Data Source=" + "员工信息mdb" + ";Persist Security Info=False")。
2 //建立数据库引擎连接,注意数据表(后缀为db)应放在DEBUG文件下。
3OleDbDataAdapter myda = new OleDbDataAdapter("select from 。
4trConnection); //建立适配器,通过SQL语句去搜索数据库。
5按F5运行后,点击BUTTON按钮,便会显示相应的SQL语句下的数据库里的表。
6 string strcon = "Provider=MicrosoftJetOLEDB40;Data Source=db4mdb;"; mycon = new OleDbConnection(strcon)。
步骤1:点击开始,打开Microsoft Excel 2010。
2
步骤2:打开之后,点击数据,其他来源,来自SQL Server。
3
步骤3:打开数据链接向导之后,输入服务器名称和登陆用户名和密码。点击下一步。
步骤4:点击下一步之后,报错,不能够正常链接数据库。
步骤5:打开SQL Server 数据库代理服务器,查看代理停止工作,将其启动。
步骤6:修改服务器名称为SQL Server所在的服务器的IP地址填写入服务器名称,登陆名称和密码全部为sa。
步骤7:进入,选择数据库和表。选择PUBS,点击下一步。
步骤8:点击下一步,保持链接文件,点击完成。
步骤9:点击导入数据
步骤10
连接属性,连接名称:17216031
pubs employee,连接文件:C:\Documents and Settings\lys\My
Documents\我的数据源\17216031 pubs employeeodc 连接字符串:
Provider=SQLOLEDB1;Persist Security Info=True;User ID=sa;Data
Source=17216031;Use Procedure for Prepare=1;Auto
Translate=True;Packet Size=4096;Workstation ID=L10-1DA235E90;Use
Encryption for Data=False;Tag with column collation when
possible=False;Initial Catalog=pubs 命令文本:"pubs""dbo""employee"
步骤11:点击确定,输入密码Sa。
步骤12: 我们可以看到将SQL Server数据写入了EXCEL中。
查询EXCEL中数据库:
查询数据库中数据:
SELECT
FROM employee
1数据库连接:在config文件中的形式
<connectionStrings>
<add name="dbConnection" connectionString="Data Source=1921681100;Initial Catalog=NanFangMgr;User ID=sa;PassWord=sa" providerName="SystemDataSqlClient"/>
</connectionStrings>
2在C#中调用:
SystemConfigurationConfigurationManagerConnectionStrings["dbConnection"]ConnectionString
3将上述连接串保存到文本文件中
private string FILE_NAME = ApplicationStartupPath + "\\mytxtFiletxt";
private void WriteFile(string str)
{
StreamWriter sr;
if (FileExists(FILE_NAME)) //如果文件存在,则创建FileAppendText对象
{
sr = FileAppendText(FILE_NAME);
}
else //如果文件不存在,则创建FileCreateText对象
{
sr = FileCreateText(FILE_NAME);
}
srWriteLine(str);
srClose();
}
4从文本文件中去内容
private String ReadTxtFile()
{
if (FileExists(FILE_NAME)) //如果文件存在
{
String[] strs = SystemIOFileReadAllLines(FILE_NAME);
return strs[strsLength - 1];
}
return StringEmpty;
}
5数据库连接,并 *** 作
51 查询
String ConnectionString=SystemConfigurationConfigurationManagerConnectionStrings["dbConnection"]ConnectionString;
public DataTable Query(String where)
{
String sql = StringFormat("select from mytable Where {0}", whereToLower()Replace("update", "")Replace("delete", "")Replace("insert", "")Replace(";", "")Replace("--", "")Replace("exec", ""));
try
{
SqlDataAdapter da = new SqlDataAdapter(sql, new SqlConnection(ConnectionString));
DataTable dt = new DataTable();
daFill(dt);
return dt;
}
catch
{
return null;
}
}
52 新增
public int New(Entitiesmytable obj)
{
String sql = "insert into mytable(pkid,a,b,c) values(@pkid,@a,@b,@c)";
SqlConnection cn = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand(sql, cn);
cmdParametersAddWithValue("@a", obja);
cmdParametersAddWithValue("@b", objb);
cmdParametersAddWithValue("@c", objc);
cmdParametersAddWithValue("@pkid",
StringEmptyEquals(objpkid) SystemGuidNewGuid()ToString() : objpkid);
try
{
if (cnState != ConnectionStateOpen)
cnOpen();
return cmdExecuteNonQuery();
}
catch
{
return -1;
}
finally
{
if (cnState != ConnectionStateClosed)
cnClose();
}
}
53 编辑
public int Update(Entitiesmytable obj)
{
String sql = "Update mytable Set a=@a,b=@b,c=@c Where pkid=@ObjectID";
SqlConnection cn = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand(sql, cn);
cmdParametersAddWithValue("@a", obja);
cmdParametersAddWithValue("@b", objb);
cmdParametersAddWithValue("@c", objc);
cmdParametersAddWithValue("@pkid", objpkid);
try
{
if (cnState != ConnectionStateOpen)
cnOpen();
return cmdExecuteNonQuery();
}
catch
{
return -1;
}
finally
{
if (cnState != ConnectionStateClosed)
cnClose();
}
}
54 删除
public int Del(String where)
{
String sql = StringFormat("delete from mytable Where {0}", whereToLower()Replace("update", "")Replace("delete", ""));
SqlConnection cn = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand(sql, cn);
try
{
if (cnState != ConnectionStateOpen)
cnOpen();
return cmdExecuteNonQuery();
}
catch
{
return -1;
}
finally
{
if (cnState != ConnectionStateClosed)
cnClose();
}
}
以上就是关于如何使用 APICloud 的端 API 连接到自己的服务器数据库获取数据全部的内容,包括:如何使用 APICloud 的端 API 连接到自己的服务器数据库获取数据、JDBC连接MySQL数据库进行文本读取、编写一个以读配置文件的Java连接数据库的程序。通过读取文件的相关属性来连接相应的数据库。文件mssql.ini等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)