会SQL语句,就能快速开放你的SQL Server数据接口

如何快速开发和对外开放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 -p
Password: 
1> use master;
2> go
Changed 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]
GO
CREATE 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]
GO
EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', 'dbo', 'TABLE', 'demo_test', 'COLUMN', 'add_time'
GO
EXEC 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接口。

 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQL Server中,可以使用分布式事务来实现跨服务器修改数据的功能。分布式事务是指在多个服务器上执行的一系列数据库操作,这些操作要么全部成功提交,要么全部回滚。 首先,我们需要在本地服务器和目标服务器上创建连接。可以使用Linked Server功能在本地服务器上创建到目标服务器的连接。具体步骤是在本地服务器上打开SQL Server Management Studio,右键单击“服务器对象”文件夹,选择“新建” -> “链接服务器”。然后在“网状格式”选项中,输入目标服务器的名称、登录信息和其他必要的设置。 连接创建完成后,我们可以使用分布式事务来修改数据。可以使用BEGIN DISTRIBUTED TRANSACTION语句开始一个分布式事务,然后在事务中执行需要的SQL语句。例如,可以使用INSERT、UPDATE或DELETE语句来修改数据。 修改数据的语法与在本地服务器上执行相同,只是在表名前需要添加目标服务器的名称,以指定在哪个服务器上执行操作。例如,如果目标服务器的名称是“TargetServer”,需要在表名前添加“TargetServer.”,如“TargetServer.dbo.TableName”。 在所有需要修改数据SQL语句执行完毕后,可以使用COMMIT DISTRIBUTED TRANSACTION语句来提交事务,或者使用ROLLBACK DISTRIBUTED TRANSACTION语句来回滚事务。提交事务将所有的修改操作应用到数据库,而回滚事务撤销所有的修改操作。 需要注意的是,跨服务器修改数据可能涉及到网络延迟和性能问题。为了提高性能,可以考虑使用合适的索引、优化查询语句和减少数据传输等方法。 总结来说,通过创建连接、使用分布式事务和使用目标服务器的名称来修改数据SQL语句,我们可以实现SQL Server跨服务器修改数据的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值