mac django queryset接入sqlserver

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/g8433373/article/details/86270631

mac Django框架接入SqlServer

背景

  • 我需要通过django queryset 将数据存储进sqlserver,相信大多数朋友都有过接入mysql的操作,但是mac中需要接入sqlserver 还并不是那么简单,经历了很多坑,还是挺多步骤的,下面跟着我走吧

ps. 如果对django 的orm框架不太会使用的朋友可以看下这里

事前准备

mac安装sqlserver

  • 如果有英语基础的看这里
  • 看了上面的话 这一步可以跳过,没有的话跟我走一遍
  • 安装docker,看这里 ps.需要登录才能下载dmg镜像
  • 安装Azure Data Studio
  • 启动docker 顺序运行如下命令:
$ docker pull microsoft/mssql-server-linux
$ docker run -d --name 取个名字 -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=你的密码不少于8位' -p 1433:1433 microsoft/mssql-server-linux
  • 检查下是否安装ok
$ docker ps
// 出现如下说明成功
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                    NAMES
13129e1ccda6        microsoft/mssql-server-linux   "/opt/mssql/bin/sqls…"   2 hours ago         Up 2 hours          0.0.0.0:1433->1433/tcp   power
  • 以上步骤说明sqlserver已经安装并且启动成功了
  • 登录 Azure Data Studio

建库建表

  • 打开Azure Data Studio的New Query模块,运行如下命令:
$ create database crawl_teach;
  • 这样,我们第一个测试库就建好了
  • 为了方便测试,再建一个表test,我们只有一个字段 name
CREATE TABLE test (
  name nvarchar(255) NOT NULL,
);
  • 最终的效果图:效果

Django接入

  • 之前django一直接入不了,各种坑,后面看到了一个大神的博客,终于解决了
  • 给大家看下我的核心代码:
# models.py核心代码
class SqlServerTest(models.Model):
    class Meta:
        db_table = 'test'

    name = models.CharField(max_length=100, default="")
# 下面是settings.py核心代码
DATABASES = {
    'crawl_class': {
        'ENGINE': 'sql_server.pyodbc',
        'NAME': 'crawl_teach',
        'USER': 'sa',
        'PASSWORD': '13672240290cccC+',
        'HOST': '127.0.0.1',
        'PORT': '1433',
        'OPTIONS': {'host_is_server': True, }
    },
}
# coding:utf8
# 逻辑代码
import django
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'app.app_data.settings'
django.setup()
from app.app_data.models import SqlServerTest


if __name__ == '__main__':
    SqlServerTest.objects.create(name="power")
  • 最终运行代码,终于成功了,不容易不容易
    在这里插入图片描述

参考

[1] docker启动sqlserver
[2] sqlserver指南
[3] 大神的博客
[4] Django QuerySet学习

猜你喜欢

转载自blog.csdn.net/g8433373/article/details/86270631
今日推荐