国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

管理python程序的db schema

didikee / 3305人閱讀

摘要:在維護一個采用框架的項目過程中,發現很多優點,這些都可以借鑒到程序中遠程部署到指定環境本篇主要關注的是,在下一篇中將會介紹遠程部署程序。主要使用和兩個命令,下面的是運行在上。使用的來查看的具體信息運行下面的命令之后,上一步的命令將會回滾,即

本人是個Pythoner,曾經對ruby嗤之以鼻,但每種語言都有自己的擅長方向,不能一味的否定一門語言。在維護一個采用ruby on rails框架的項目過程中,發現rails很多優點,這些都可以借鑒到python程序中:

db schema migration

遠程部署到指定環境

本篇主要關注的是 db schema migration,在下一篇中將會介紹遠程部署python程序。
db migration主要使用rails和rake兩個命令,下面的demo是運行在Mac OS上。

環境準備

git clone https://github.com/flying-bir...

cd python-db-schem; sudo gem install bundler

bundle install

Create Table 生成db文件,相當于sql文件

命令:

    ./bin/rails generate migration CreateJobTable

輸出:

    db/migrate文件夾下面生成 {timestamp}_create_job_table.rb
在上步生成的文件中,寫入具體的sql內容

采用如下格式:

class CreateJobTable < ActiveRecord::Migration
  def change
    create_table :d_job do |t|
          t.string :name
          t.string :path
          t.string :team
          t.references :pipeline
          t.string :function
          t.text :url
          t.integer :exclude,default:0
    end
    add_foreign_key :d_job, :d_pipeline, column: :pipeline_id
  end
end
Apply SQL File

命令:

./bin/rake db:migrate

運行上面的命令之后,將會在本地的db中創建出一個d_job表。
使用mysql的show create table來查看d_job的具體信息:

mysql> show create table d_job G
*************************** 1. row ***************************
       Table: d_job
Create Table: CREATE TABLE `d_job` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` text,
  `path` text,
  `team` text,
  `pipeline_id` int(11) DEFAULT NULL,
  `function` varchar(120) DEFAULT NULL,
  `exclude` int(11) DEFAULT "0",
  PRIMARY KEY (`id`),
  KEY `pipeline_id` (`pipeline_id`),
  CONSTRAINT `d_job_ibfk_1` FOREIGN KEY (`pipeline_id`) REFERENCES `d_pipeline` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=186 DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
Rollback

運行下面的命令之后,上一步的db命令將會回滾,即drop table d_job

./bin/rake db:rollback  STEP=1

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/38565.html

相關文章

  • 遠程部署python程序

    摘要:接著上一篇管理程序的本篇介紹遠程部署到指定環境使用的技術是環境準備使用下面的命名獲得模版,里面有準備好的各個以及基本包。將上面的的,和定制成你需要的參數就好。在上述命令運行成功之后,登錄到上下目錄結構,如下所示將部署到之后,到環境。 接著上一篇管理python程序的db schema, 本篇介紹遠程部署到指定環境(prod or staging).使用的技術是Capistrano. 環...

    marser 評論0 收藏0
  • ?openGauss數據庫源碼解析系列文章—— DeepSQL?

    ???大家好,我是Gauss松鼠會,歡迎進來學習啦~??? 上一篇介紹了 8.6 AI查詢時間預測的相關內容,本篇我們介紹8.7 DeepSQL、8.8 小結的相關精彩內容介紹。 8.7 DeepSQL 前面提到的功能均為AI4DB領域,AI與數據庫結合還有另外一個大方向,即DB4AI。在本章中,我們將介紹openGauss的DB4AI能力,探索通過數據庫來高效驅動AI任務的新途徑。 使用場景 ...

    Atom 評論0 收藏0

發表評論

0條評論

didikee

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<