Popular Posts
Activate IIS GIZP compress 1. Set metabase editable for editing. 2. Add a new extension for gzip. 3. Edit the file c:\windows\system32\inetsrv\MetaBase.xml Add file... Sublime Text hotkeys 編輯 Ctrl + X 刪除行 Ctrl + Enter 插入下一行 Ctrl + Shift + Enter 插入前一行 Ctrl + Shift + ↑ 往上移動一行 C... Tomcat GET encoding edit server.xml : <Connector     URIEncoding="UTF-8"     connectionTimeout="20000"     port="8080"     prot...
Stats
Showing posts with label MySQL. Show all posts
Showing posts with label MySQL. Show all posts
Dump MySQL & restore
$ mysqldump -u root -x --all-databases > dump.sql
$ mysqldump -u root データベース名 > dump.sql
$ mysql -u root -p < dump.sql 
$ mysql -u root データベース名 < dump.sql 
MySQL remote access by root
my.cnf
#bind-address = 127.0.0.1   (disable this setting for listening any address)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root_password' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
Execute a STRING as a query
MySQL:
BEGIN
    SET @sql = CONCAT('SELECT * FROM ', table_name, ' WHERE id = ', vID);
    PREPARE stmt FROM @sql;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;
END
BEGIN
    PREPARE stmt1 FROM 'SELECT SQRT(POW(?,2) + POW(?,2)) AS hypotenuse';
    SET @a = 3;
    SET @b = 4;
    EXECUTE stmt1 USING @a, @b;
    DEALLOCATE PREPARE stmt1;
END;
Temp table sample
MySQL
-- Procedure "IsActionAllowed" DDL

CREATE DEFINER=`root`@`%` PROCEDURE `IsActionAllowed`(IN roleid CHAR(36), IN functionid CHAR(36))
BEGIN
    DECLARE rid CHAR(36);
    DECLARE base_role CHAR(36);
    DECLARE exist INT;

    CREATE TEMPORARY TABLE TempTable (RID CHAR(36)) TYPE=INNODB;

    INSERT INTO TempTable VALUES(roleid);
    SET base_role = '';
    SET rid = roleid;

    WHILE base_role IS NOT NULL DO
        IF base_role <> '' THEN
            INSERT INTO TempTable VALUES(base_role);
        END IF;

        SELECT
            tbl_roles.BASE_ON_ROLE INTO base_role
        FROM
            tbl_roles
        WHERE
            tbl_roles.ROLE_ID = rid;

        SET rid = base_role;

    END WHILE;

    SELECT
        COUNT(tbl_role_permission.ROLE_ID) INTO exist
    FROM
        tbl_role_permission
    WHERE
        tbl_role_permission.ROLE_ID IN (SELECT * FROM TempTable)
        AND tbl_role_permission.FUNCTION_ID = functionid;

    DROP TEMPORARY TABLE IF EXISTS TempTable;

    IF exist > 0 THEN
        SELECT true AS Allowed;
    ELSE
        SELECT false AS Allowed;
    END IF;
END;
Procedure tutorial : Stored Procedure Parameters
Get all table's name from db
Sql server
SELECT * FROM INFORMATION_SCHEMA.TABLES
Access
SELECT * FROM MSYSOBJECTS
MySQL
SHOW TABLES
Oracle
SELECT * FROM USER_OBJECTS
Select random row from database
Sql server
SELECT TOP 1 * FROM Table WHERE SomeColumn = something ORDER BY NEWID()
ACCESS
SELECT TOP 1 * FROM Table WHERE SomeColumn = something ORDER BY RND(ColumnName)
MySQL
SELECT * FROM Table ORDER BY RAND() LIMIT 1
Oracle
SELECT * FROM (SELECT * FROM Table ORDER BY dbms_random.value) WHERE rownum = 1;