admin管理员组文章数量:1794759
[SQL Server玩转Python] 一.安装环境及T
在开发项目过程中,更多的是通过Python访问SQL Server数据库接口,进行数据挖掘的操作;而SQL Server2016版本之后,嵌入了强大的R、Python、Machine Learning等功能,尤其是Python代码置于存储过程中,可以实现一些便捷数据分析功能。
本系列文章主要讲解SQL Server 2017实现Python数据分析的文章,同时对比两者的优劣。第一篇文章主要讲解SQL Server开发Python环境的安装过程及基本的数据分析代码实现。基础性文章,自己也在不断学习中,希望对你有所帮助。
PS:2019年1~2月作者参加了CSDN2018年博客评选,希望您能投出宝贵的一票。我是59号,Eastmount,杨秀璋。投票地址:bss.csdn/m/topic/blog_star2018/index
五年来写了314篇博客,12个专栏,是真的热爱分享,热爱CSDN这个平台,也想帮助更多的人,专栏包括Python、数据挖掘、网络爬虫、图像处理、C#、Android等。现在也当了两年老师,更是觉得有义务教好每一个学生,让贵州学子好好写点代码,学点技术,"师者,传到授业解惑也",提前祝大家新年快乐。2019我们携手共进,为爱而生。一. 安装SQL Server
(一) 安装SQL Server 2017
本文安装的软件为:cn_sql_server_2017_developer_x64_dvd_11296175.iso 下载地址:
1.选择“全新 SQL Server 独立安装或向现有安装添加功能”。
2.安装所需功能,注意机器学习服务、R、Python均需要安装。
3.选择默认实例“MSSQLSERVER”。
4.选择混合性模型,包括SQL Server身份验证(sa)和Windows身份验证,同时添加当前用户。
5.安装。
安装成功之后,你会发现仍然不能编写SQL Server代码,这是因为还需要安装SQL Server管理工具。
(二) 安装SQL Server Management Studio
微软官方下载地址:docs.microsoft/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017 作者上传下载地址:
安装过程如下图所示。
安装成功之后即可使用SQL Server编写代码了。
二. 配置Python和R开发环境
安装成功之后我们新建一个数据库test01,可以发现SQL语句可以编写,但编写Python或R代码仍然会报错。 推荐文章: docs.microsoft/zh-tw/sql/advanced-analytics/tutorials/run-python-using-t-sql?view=sql-server-2017 解决方法: wwwblogs/OpenCoder/p/7090370.html www.kodyaz/t-sql/enable-external-script-on-sql-server-for-r-python.aspx
1.查看Python是否已经启用,查看SQL Server环境下是否有Python可执行文件。如:C:\\Program Files\\Microsoft SQL Server\\MSSQL14.MSSQLSERVER\\PYTHON_SERVICES。 注意,Scripts文件夹下可以通过pip安装其他Python库。
2.检查是否已启用外部指令,代码如下:
--查看外部指令 sp_configure 'external scripts enabled' --启用外部脚本,设置config_value为1 EXEC sp_configure 'external scripts enabled', 1 RECONFIGURE WITH OVERRIDE如果run_value为1,则机器学习功能已经安装成功并且可供使用。否则设置config_value为1。
3.此时如果执行Python代码,可能会提示错误“此 SQL Server 实例已禁用 sp_execute_external_script,请使用 sp_configure 的已启用的外部脚本对其进行启用。” 这表示run_value仍然为0,此时需要开启服务。开启方法如下: 1) 开启SQL Server实例数据库引擎服务 2) 开启SQL Server实例Lanuchpad服务 注意执行完后要重启数据库引擎服务和SQL Server Lanuchpad服务才会正式生效:
4.重启电脑和数据库引擎服务。
5.添加最简单的Python和R语言代码,并执行。 Pyhton代码
EXEC sp_execute_external_script @language = N'Python', @script = N'print(3+4)'运行结果如下:
R代码
exec sp_execute_external_script @language =N'R', @script=N'OutputDataSet<-InputDataSet', @input_data_1 =N'select 1 as hello' with result sets (([hello] int not null)); go运行结果如下:
三. T-SQL调用Python数据分析入门
脚本语言的基本语法如下,推荐官方文章 sp_execute_external_script (TRANSACT-SQL) 。
sp_execute_external_script @language = N'language', @script = N'script' [ , @input_data_1 = N'input_data_1' ] [ , @input_data_1_name = N'input_data_1_name' ] [ , @output_data_1_name = N'output_data_1_name' ] [ , @parallel = 0 | 1 ] [ , @params = N'@parameter_name data_type [ OUT | OUTPUT ] [ ,...n ]' ] [ , @parameter1 = 'value1' [ OUT | OUTPUT ] [ ,...n ] ]推荐这篇文章供大家学习基础知识:使用 T-SQL 執行 Python
1.程序一 调用包
execute sp_execute_external_script @language = N'Python', @script = N' import math a = 1 b = 2 c = a*b print(a,b,c) d = math.pi/6 print(math.sin(d)) '输出结果如下所示:
2.程序二 回归预测
execute sp_execute_external_script @language = N'Python', @script = N' from sklearn import linear_model import matplotlib.pyplot as plt import numpy as np #X表示匹萨尺寸 Y表示匹萨价格 X = [[6], [8], [10], [14], [18]] Y = [[7], [9], [13], [17.5], [18]] print(X) print(Y) #回归训练 clf = linear_model.LinearRegression() clf.fit(X, Y) res = clf.predict(np.array([12]).reshape(-1, 1))[0] print(u"预测一张12英寸匹萨价格:$%.2f" % res) #预测结果 X2 = [[0], [10], [14], [25]] Y2 = clf.predict(X2) '输出结果可以看到线性回归预测的价格。
后续文章将结合存储过程详细讲解SQL Server玩转Python的过程,比如这篇文章。 docs.microsoft/zh-cn/sql/advanced-analytics/tutorials/sqldev-py5-train-and-save-a-model-using-t-sql?view=sql-server-2017
希望文章对大家有所帮助,如果有错误或不足之处,还请海涵。最近经历的事情太多,有喜有悲,关闭了朋友圈,希望通过不断学习和写文章来忘记烦劳,将忧郁转换为动力,每周学习都记录下来。 (By:Eastmount 2018-11-12 晚上12点 blog.csdn/Eastmount/)
版权声明:本文标题:[SQL Server玩转Python] 一.安装环境及T 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1687062458a130865.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论