相关疑难解决方法(0)

如何使用sqlalchemy创建db mysql

我需要使用sqlalchemy在mysql中创建一个db,如果它已经存在,我可以连接到db,但是我希望能够创建它,如果它不存在的话.这是我的表:

    #def __init__(self):
Base = declarative_base()

class utente(Base):
    __tablename__="utente"
    utente_id=Column(Integer,primary_key=True)
    nome_utente=Column(Unicode(20))
    ruolo=Column(String(10))
    MetaData.create_all()

    def __repr(self):
        return "utente: {0}, {1}, id: {2}".format(self.ruolo,self.nome_utente,self.utente_id)


class dbmmas(Base):

    __tablename__="dbmmas"
    db_id=Column(Integer,primary_key=True,autoincrement=True)
    nome_db=Column(String(10))
    censimento=Column(Integer)
    versione=Column(Integer)
    ins_data=Column(DateTime)
    mod_data=Column(DateTime)
    ins_utente=Column(Integer)
    mod_utente=Column(Integer)
    MetaData.create_all()

    def __repr(self):
        return "dbmmas: {0}, censimento {1}, versione {2}".format(self.nome_db,self.censimento,self.versione)    

class funzione(Base):
    __tablename__="funzione"
    funzione_id=Column(Integer,primary_key=True,autoincrement=True)
    categoria=Column(String(10))
    nome=Column(String(20))
    def __repr__(self):
        return "funzione:{0},categoria:{1},id:{2} ".format(self.nome,self.categoria,self.funzione_id)

class profilo(Base):
    __tablename__="rel_utente_funzione" 
    utente_id=Column(Integer,primary_key=True)
    funzione_id=Column(Integer,primary_key=True)
    amministratore=Column(Integer)
    MetaData.create_all()

    def __repr(self):
        l=lambda x: "amministratore" if x==1 else "generico"
        return "profilo per utente_id:{0}, tipo: {1}, funzione_id: {2}".format(self.utente_id,l(self.amministratore),self.funzione_id)    

class aree(Base):
    __tablename__="rel_utente_zona" …
Run Code Online (Sandbox Code Playgroud)

python mysql sqlalchemy

26
推荐指数
4
解决办法
4万
查看次数

如何使用sqlalchemy搜索数据库的存在

我需要编写一个python sqlalchemy脚本来搜索数据库是否存在,如果数据库存在,它应该查询数据库,否则创建数据库和表.

伪代码:

   if db exists cursor.execute(sql)
   else
      create db test;
      create tables;
      insert data;
Run Code Online (Sandbox Code Playgroud)

sqlalchemy

16
推荐指数
3
解决办法
1万
查看次数

sqlalchemy连接到服务器,未指定数据库

是否有可能连接MSSQL服务器,使用的SQLAlchemy和thencreate数据库?

我使用以下内容:

sqlalchemy.create_engine("mssql+pyodbc://sa:pwd@localhost/")

但是我收到一个错误:

Detail DBAPIError: (Error) ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)') None None

我想连接到服务器,然后创建数据库并使用它.

python sql-server odbc sqlalchemy

6
推荐指数
1
解决办法
4053
查看次数

python postgresql创建数据库并从pandas数据帧填充表

我对 Python 很陌生,对使用 postgresql 也很陌生,所以如果这是基本的东西(我 - 到目前为止 - 未能实现),请原谅我。我正在尝试编写一个 python 代码:

  • 创建一个新的数据库 ( testdb)
  • 将 csv 文件读入 Pandas 数据帧
  • 从 Pandas 数据框中创建并填充数据库中的新表。

到目前为止,我有 3 个不同的文件:a)一个.ini-File,我在其中存储创建新数据库所需的数据库信息,b)一个.csv-File(来自此处,命名为100_recs.csv)和 c)我的 python 代码。

数据库.ini :

[postgresql]
host=localhost
user=postgres
password=creator
port=5432
Run Code Online (Sandbox Code Playgroud)

db_creator.py :

from config import config
import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy_utils import database_exists, create_database
import pandas as pd

# useful info for psycopg2:
# /sf/ask/2413884651/


class MyDB(object):
    def __init__(self):
        self.params = config()

    def …
Run Code Online (Sandbox Code Playgroud)

python postgresql sqlalchemy pandas sqlalchemy-utils

6
推荐指数
1
解决办法
2451
查看次数