🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@mmstudio/an000014

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mmstudio/an000014

sql查询

latest
Source
npmnpm
Version
1.1.0
Version published
Weekly downloads
14
250%
Maintainers
1
Weekly downloads
 
Created
Source

sql查询

数据库查询

数据库类型

支持mysql,postgres,mariadb

ts返回类型最大20个,如果超过20个,可直接as

注意事项

需要先确定数据库类型

在进行业务开发时,需要首先确定数据库类型,否则sql有非常大的可能性是无法兼容的。

long类型

postgres数据库中的长整型转换到js中,类型为BigInt,比较小的数值最好设置其类型为smallint即可。

BigIntnumber类型计算时,需要将number转换为BigInt后进行。几种转换方法:

  • BigInttonumber.一般无须进行这种转换,因为有可能会因长度不够而失败

    function b2n(v: BigInt){
    	return parseInt(v.toString(), 10);
    }
    
  • numbertoBigInt

    function n2b(v: number){
    	return BigInt(v);
    }
    
  • stringtoBigInt

    function n2b(v: string){
    	return BigInt(v);
    }
    
  • BigInttostring

    function n2b(v: BigInt){
    	return v.toString();
    }
    

配置

mm.json

{
	"dbs": {
		"db001": {
			"type": "postgres",
			"source": "postgres://mmstudio:Mmstudio123@127.0.0.1:5432/mmstudio"
		},
		"db002": {
			"type": "mariadb",
			"source": "mysql://mmstudio:Mmstudio123@127.0.0.1:3306/mmstudio?connectionLimit=5"
		},
		"db003": {
			"type": "mariadb",
			"source": [
				"mysql://mmstudio:Mmstudio123@127.0.0.1:3306/mmstudio?connectionLimit=5",
				"mysql://mmstudio:Mmstudio123@127.0.0.1:3307/mmstudio?connectionLimit=5",
				"mysql://mmstudio:Mmstudio123@127.0.0.1:3308/mmstudio?connectionLimit=5"
			]
		}
	}
}

说明

  • 项目下的配置会在部署时被覆盖
  • 配置文件名固定mm.json,且须放置在项目根目录
  • dbs下的名称db001,db002,db003视具体情况配置,个数不定,简单项目使用一个数据库亦可。
  • type目前只支持postgresmariadb两种,mariadb与mysql通用
  • mariadb支持主从节点配置如db003,配置项的第一个将作为主节点

docker-compose

docker-compose安装

[sudo] docker-compose -f db.yaml up

db.yaml

version: '3.7'

services:
  postgres:
    image: postgres
    container_name: postgres
    volumes:
      - /home/taoqf/data/postgre:/var/lib/postgresql/data
    restart: always
    environment:
      POSTGRES_DB: mmstudio
      POSTGRES_USER: mmstudio
      POSTGRES_PASSWORD: Mmstudio123
    ports:
      - 5432:5432

  mariadb:
    image: mariadb
    container_name: mariadb
    restart: always
    volumes:
      - /home/taoqf/data/mysql:/var/lib/mysql
    environment:
      MYSQL_DATABASE: mmstudio
      MYSQL_USER: mmstudio
      MYSQL_PASSWORD: Mmstudio123
      MYSQL_ROOT_PASSWORD: Mmstudio123
    ports:
      - 3306:3306

  adminer:
    container_name: adminer
    image: adminer
    restart: always
    ports:
      - 8080:8080
# networks:
#   default:

Keywords

mm

FAQs

Package last updated on 09 Jan 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts