会SQL语句,就能快速开放你的SQL Server数据接口(sql数据库开放端口)
如何快速开发和对外开放SQL Server数据接口?
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。如果原来的系统和数据库,使用了SQL Server,当需要对外提供和开放新的数据接口时,可以使用 接口大师 接口低代码开发你的数据API接口。即会SQL语句,就能快速开放你的SQL Server数据接口。
本地安装
接口大师,可以安装在本地服务器,支持可视化安装。
成功安装后,可以访问首页。
随后,登录管理后台,使用刚才在安装时自己填写的管理员账号和密码。
成功登录管理后台,即可进入后台对API接口、SQL Server数据库、开发者账号和流量进行管理。
管理后台的首页效果,
配置和连接你的SQL Server数据库
在管理后台,进入【数据库管理】-【数据库配置管理】,可以查看已经配置的数据库列表,除了支持微软的SQL Server,还支持MySQL等开源数据库。
点击【添加新数据库配置】,数据库类型选择【SQL Server】,根据表单配置,填写数据库的其他连接信息。例如:数据库地址/IP地址、数据库端口 1433、数据库账号、数据库密码、数据库名、数据库编码 等。
例如,使用Navicat客户端,可以连接上你的SQL Server数据进行管理。
在Linux命令行终端,则可以使用sqlcmd命令进行数据库的连接和sql语句操作。
$ sqlcmd -S 120.77.148.122 -U SA -pPassword: 1> use master;2> goChanged database context to 'master'.
回到接口大师的数据库配置管理,填写并保存后,可以测试你的SQL Server数据库连接。如果连接失败,请核对数据库地址、账号密码和端口是否开放了安全访问。
测试成功后,保存配置。
SQL Server数据库的表统计和实时进程
配置好你的SQL Server数据库后,可以通过查看数据库的统计和实时进程来核对数据库是否连接正常。
查看SQL Server数据库表的大小和索引大小统计,
SQL Server的实时进程,
SQL Server低代码数据API接口开发
接下来,介绍如何使用接口大师,结合编写SQL Server的SQL语句,快速开发你的API数据接口。
进入【API接口管理】-【低代码接口开发】-【接口开发列表】,可以管理你已经编写和发布的API接口。
点击【新接口】,进入接口编辑器。
依次选择:【接口设计类型为:生成数据库表接口API】-【数据库:选择刚才你配置的SQL Server数据库】-【数据库:选择你需要对外开放的表】。
如果数据库表未存在,可以进行添加表操作。接口大师会提供辅助创建新表的SQL语句。
CREATE TABLE [dbo].[test] ( [id] int not null identity(1,1) primary key, [uid] int NULL DEFAULT ((0)), [app_key] varchar(100) default '' not null, [add_time] datetime2 NULL, [update_time] datetime2 NULL)ON [PRIMARY];-- EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', 'dbo', 'TABLE', 'test', 'COLUMN', 'add_time';-- EXEC sp_addextendedproperty 'MS_Description', N'更新时间', 'SCHEMA', 'dbo', 'TABLE', 'test', 'COLUMN', 'update_time';
紧接着,继续配置填写你的接口名称、接口参数、接口功能描述等。
填写好接口的信息后,点击【生成代码】,系统会根据你填写的接口信息,自动生成接口PHP源代码。
在生成的接口代码中,找到需要调整的SQL Server数据库查询语句。
如,
// 根据SQL查询数据库,需要带表前缀 // 更多数据库操作请见:http://docs.phalapi.net/#/v2.0/database-usage $sql = 'SELECT * FROM demo_test WHERE [name] = :name AND [id] = :id';
把上面的SQL修改成你需要查询和提供的SQL语句,接口参数,可以使用前面配置好的接口参数,然后调整你的select查询字段、order排序规则、返回条数等。
最后,【保存并发布】。
查看和调用SQL Server前台数据API接口
在管理后台发布接口后,可以在管理后台查看【接口文档】,或直接到前台查看【OpenAPI】,即可查看刚才发布成功的新接口。
除了自己编写的SQL接口外,还会配套生成默认的CURD增删改查数据接口。
例如,当前有数据库表 demo_test,表结构如下:
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID('[dbo].[demo_test]') AND type IN ('U')) DROP TABLE [dbo].[demo_test]GOCREATE TABLE [dbo].[demo_test] ( [id] int NOT NULL, [name] varchar(100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL, [add_time] datetime2(0) NULL, [update_time] datetime2(0) NULL, [uid] int NULL DEFAULT ((0)))ON [PRIMARY]GOEXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', 'dbo', 'TABLE', 'demo_test', 'COLUMN', 'add_time'GOEXEC sp_addextendedproperty 'MS_Description', N'更新时间', 'SCHEMA', 'dbo', 'TABLE', 'demo_test', 'COLUMN', 'update_time'GO
现有表数据如下,
先来调用API接口创建添加一条新数据,进入【接口大师 / OpenAPI / 创建新数据】,查看一下接口的基本信息。
测试数据添加,
查看数据库是否写入成功。
再来调用自己编写SQL语句的API接口。
使用Postman客户端请求接口的效果是,
使用curl方式请求接口,效果如下,
$ curl "http://pro-test.api.yesapi.cn/api/app.php?s=App.SQLServer0915.ActionName&id=1&name=xxxx"
{"ret":200,"data":{"rows":[{"id":"1","name":"xxxx","add_time":"2022-09-15 16:36:49","update_time":"2022-09-15 16:36:54","uid":"3"}]},"msg":""}
查看API接口请求日志、参数和流量统计
进入管理后台的【API接口管理】-【接口监控】-【接口访问日记】,可以查看API接口被调用的详细日记和接口请求参数。
在【每日接口统计】,可以看到接口的汇总统计。
可以同时查看接口的请求次数,和接口的响应时间性能指标。
分配SQL Server数据接口权限
最后,当你需要开放和提供数据接口给外部使用时,需要先创建一个开发者账号。
并为这个开发者账号绑定一个应用,
分配需要的接口权限,
登录开放平台和调用数据API
作为使用接口的开发者,可以登录开放平台,
查看已申请的应用和已获得权限的接口,
根据接口文档,对接和使用API接口。