Python web(Django)连接Sql server

(开开心心每一天~ ---虫瘾师)
Python Web(Django) 与SQL SERVRE的连接————Come QQ群:607021567(里面有很多开源代码和资料,并且python的游戏也有)
(一)、SQL SERVER的基本介绍(简单)————SQL 是用于访问和处理数据库的标准的计算机语言。
(二)、Django框架——Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。
1、SQL SERVER 基本结构
table---表:字段、记录;
view---视图:是从一个或多个基本表中定义的虚表,相当于一个窗口,通过该窗口可以看到用户所需要的数据;
stored procedure---存储过程:存储过程的存在独立于表,用户可以运用存储过程来完善应用程序;
trigger---触发器:用户通过使用触发器来实现各种复杂的业务规则;
indexes---索引:用户和角色:用户是指对数据库具有一定权限的使用者,角色是一组具有相同权限的用户集合;
这里Python Web(Django)需要主要用到的是 stored procedure---存储过程 。
stored procedure---存储过程————存储过程是SQL语句和控制语句的预编译集合,保存在数据库中,可以调用执行,并且允许用户声明变量.逻辑控制语句以及其他强大的编程功能,它会使你的数据库操作事半功倍,并且在django中也会有所收益!
我会将项目中详细用到的内容都会写下来。
2、Django框架 基本结构

---->主项目文件夹
----->工程文件夹
主控文件: ----->settings.py ——主要控制你的静态文件,和python自带数据库,也可使用它来连接数据库
----->urls.py ——web前端通过后台需要访问的地址,并且静态文件的地址也是需要写在这里的
----->wsgi.py ——服务器管理处
------>templates :模板文件夹,可以在创建一个脚本文件夹static
这里我们不需要用python创建后自带的连接数据库文件,因为这样要考虑到没有用软件来创建项目的人,他们的文件位置也可以改变,但是项目文件夹必须有一个。
连接sql server 需要自己写py文件。
----先要知道SQL SERVER的存储过程和表的实例:
首先创建SQL SERVER 的数据库和表,我就随便创建一个了

create table table_1 ( id ,) not null, name ) not null, age int not null )
因为是随便创建的表,所以都是默认下去的!接下来,是对存储过程。

新建存储过程:
create proc xxxxx --存储过程名字 as select * FROM table_1 --SQL 语句 go
创建完之后,我们的存储过程就可以根据我们前端需要来修改了,比如如果我们做个后台登录,或者成绩查询,都需要上传学生id,并且每一次查询的信息可以放在存储过程的临时表内,也可以直接返回。
列:
USE [my_sp]
GO
/****** Object: StoredProcedure [dbo].[my_sp_py] Script Date: 05/18/2018 15:24:28 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[my_sp_py]
@userid int,
@page int,
@pagesize int
as
/*
select * from table_1
*/
SET NOCOUNT ON;
declare @count int
select @count =COUNT(*) from table_1
begin
create table #table --临时表的结构
(
id bigint,
userid int,
ctype ),
Reduce ),
num int,
Remarks nvarchar(max),
sum int,
uptime datetime,
)
declare @where_condition nvarchar(max)
set @where_condition = ''
)
set @where_condition = @where_condition + ' and userid='+cast(@userid as varchar)
)
set @filedlist = 'id,userid,ctype,Reduce,num,Remark,sum,uptime' --需要insert 到表中的字段
declare @sql nvarchar(MAX)
set @sql = 'SQL 语句'
else
set @sql = 'SQL 语句'
--print @sql
exec (@sql) --执行SQL 语句
select * from #table --返回的结果
end
因为这个是页码和每一条数的控制,userid就是需要查询时候定义的id,到这里基本我们的存储过程就写完了!接下来就是python 连接SQL SERVER 并且访问数据库中的数据,你可以点击这里看简便的处理 连接方式
首先,我们需要独立创建一个py文件,创建一个类 class sql_server:
MSSQL_INFO = {"hostname":"local","username":"local","password":"","dbname":"table_1"}
另外,因为web应用中可以使用多个sql,所以我们把数据连接的文件放在一个单独的py文件内!
模块:pyodbc--数据库连接 创建sqlmb.py文件
strconn= 'DRIVER={SQL Server};SERVER='+sql_server.MSSQL_INFO.get("hostname")+';DATABASE='+sql_server.MSSQL_INFO.get("dbname")+';UID='+sql_server.MSSQL_INFO.get("username")+';PWD='+sql_server.MSSQL_INFO.get("password")
db = pyodbc.connect(strconn)
return db
数据连接就到这里已经成功一半了,接下来就是我们项目中需要去访问数据库的数据了!
使用前要import 包名(sqlmb)
mssql_conn = sqlmb.mssqlserver_conn_db()
c = mssql_conn.cursor()
c.execute("{call my_sp_py (?,?,?)}", (userid,page,pagesize))
q = c.fetchone() #fetchall所有数据
c.commit()
q就是数据库中所返回的数据,也就是select所返回的内容!好了,django与sql server的处理基本就是这些内容!下次再见!
Python web(Django)连接Sql server的更多相关文章
- python 使用pymssql连接sql server数据库
python 使用pymssql连接sql server数据库 #coding=utf-8 #!/usr/bin/env python#------------------------------ ...
- Django连接SQL Server,安装相关扩展包及相关配置
1.python下载 https://www.python.org/downloads/windows/ 2.根据当前windows和python的版本,下载pymssql相应的exe安装文件. ht ...
- python使用pyodbc连接sql server 2008
一.PyODBC的下载地址: http://code.google.com/p/pyodbc/ 二.测试语句 import pyodbccnxn = pyodbc.connect(DRIVER='{S ...
- python 使用pymssql连接sql server数据库(转)
import pymssql class MSSQL: """ 对pymssql的简单封装 pymssql库,该库到这里下载:http://www.lf ...
- python 连接sql server
linux 下pymssql模块的安装 所需压缩包:pymssql-2.1.0.tar.bz2freetds-patched.tar.gz 安装: tar -xvf pymssql-2.1.0.tar ...
- python连接sql server数据库实现增删改查
简述 python连接微软的sql server数据库用的第三方模块叫做pymssql(document:http://www.pymssql.org/en/stable/index.html).在官 ...
- python 连接 SQL Server 数据库
#!/usr/bin/python # -*- coding:utf-8 -*- import pymssql import pyodbc host = '127.0.0.1:1433' user = ...
- php连接sql server
这两天有个php连接sql server的项目,顺便学习学习sql server 说明: 1:PHP5.2.x本身有个php_mssql.dll的扩展用来连接Sql server,但是这个dll只是 ...
- Android 连接 SQL Server (jtds方式)——上
本文将介绍开发Android程序,连接SQL Server,通过第三方包jtds的方式. 如果你有同样的需求,请跟着做一遍,博主将以最详细的方式,进行介绍. 首先说明,Java.Android连接SQ ...
随机推荐
- 【一天一道LeetCode】 #1 Two Sum
一天一道LeetCode系列 (一)题目 Given an array of integers, return indices of the two numbers such that they ad ...
- 【Visual C++】游戏编程学习笔记之二:定时器的使用
本系列文章由@二货梦想家张程所写,转载请注明出处. 本文章链接:http://blog.csdn.net/terence1212/article/details/44195831 作者:ZeeCode ...
- 【Visual C++】游戏编程学习笔记之七:键盘输入消息
本系列文章由@二货梦想家张程 所写,转载请注明出处. 作者:ZeeCoder 微博链接:http://weibo.com/zc463717263 我的邮箱:michealfloyd@126.c ...
- 苹果新的编程语言 Swift 语言进阶(十)--类的继承
一.类的继承 类能够从其它类继承方法.属性以及其它特性,当一个类从另外的类继承时,继承的类称为子类,它继承的类称为超类.在Swift中,继承是类区别与其它类型(结构.枚举)的基础行为. 1.1 .类的 ...
- windows c/c++ 代码运行时间,毫秒级
#pragma once /* //计算代码段运行时间的类 // */ #include <iostream> #ifndef ComputeTime_h #define ComputeT ...
- mac os x下的程序快速切换快捷键
按下command + tab键正向切换程序 按下command + shift + tab键反向切换程序 按下command + tab键选择程序后,仍然按下command键不放,然后按下optio ...
- git对远程分支和tag的操作
技术 Git查看.删除.重命名远程分支和tag 11/17/2012zrong7条评论69,235 次查看 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转 ...
- 如何用Python网络爬虫爬取网易云音乐歌曲
今天小编带大家一起来利用Python爬取网易云音乐,分分钟将网站上的音乐down到本地. 跟着小编运行过代码的筒子们将网易云歌词抓取下来已经不再话下了,在抓取歌词的时候在函数中传入了歌手ID和歌曲名两 ...
- golang实现文字云算法
golang实现文字云算法 项目链接 https://github.com/bangbaoshi/wordcloud 效果图 测试步骤如下 git clone https://github.com/b ...
- 【深入理解Java内存模型】
深入理解Java内存模型(一)--基础 深入理解Java内存模型(二)--重排序 深入理解Java内存模型(三)--顺序一致性 深入理解Java内存模型(四)--volatile 深入理解Java内存 ...