Skip to content

Instantly share code, notes, and snippets.

View carlosspohr's full-sized avatar

Carlos Spohr carlosspohr

View GitHub Profile
@carlosspohr
carlosspohr / maior_idade.sql
Created February 3, 2014 17:01
função marota pra verificar se o cabra é maior de idade.
DELIMITER $$
DROP FUNCTION IF EXISTS is_maior_idade$$
CREATE FUNCTION `is_maior_idade`(DATA_NASCIMENTO DATE, DATA_REFERENCIA DATE) RETURNS VARCHAR(30) CHARSET utf8
BEGIN
DECLARE ANOS INT(4);
DECLARE EXIT HANDLER FOR SQLEXCEPTION
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>br.inf.carlos</groupId>
<artifactId>dindin</artifactId>
<version>3.0-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.vraptor.version>3.5.2</project.vraptor.version>
@carlosspohr
carlosspohr / FagnatorController.java
Created February 18, 2014 20:18
Um exemplo de como pode ser simples usar o Restfull com VRaptor 3.
package br.inf.carlos.dindin.controllers;
import java.util.ArrayList;
import java.util.Collection;
import br.com.caelum.vraptor.Post;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;
import br.com.caelum.vraptor.view.Results;
@carlosspohr
carlosspohr / rc.local
Created February 18, 2014 20:35
Marotagem com o arquivo ```/etc/rc.local```
#!/bin/bash
/opt/apache-tomcat-7-xxx/bin/startup.sh
exit 0
@carlosspohr
carlosspohr / CAP_FIRST.sql
Created February 19, 2014 19:00
Uma function marota pra deixar a primeira letra em maiúscula....ajuda nos relatórios de vez em quando ;)
DELIMITER $$
DROP FUNCTION IF EXISTS `CAP_FIRST`$$
CREATE FUNCTION `CAP_FIRST` (palavra VARCHAR(255)) RETURNS VARCHAR(255)
BEGIN
DECLARE len INT;
DECLARE i INT;
#!/bin/bash
# export all tables that matches with a specified prefix.
mysql [database] -u[user] -p[pass] -N -e 'show tables like "tb_%"' | xargs mysqldump [database] -u[user] -p[pass] > database.sql
@carlosspohr
carlosspohr / CustomDateConverter.java
Created March 17, 2014 19:50
Exemplo de um conversor para objetos Date no formato dd/MM/yyyy
package br.inf.carlos.dindin.components.converters;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.ResourceBundle;
import org.apache.log4j.Logger;
@carlosspohr
carlosspohr / update_saldo_caixa.sql
Created March 18, 2014 13:09
Skell de uma procedure com regions e loops.
DELIMITER $$
DROP PROCEDURE IF EXISTS `update_saldo_caixas`$$
CREATE PROCEDURE `update_saldo_caixas` (data_caixa DATE, id_conta_bancaria BIGINT, id_perfil BIGINT)
DETERMINISTIC LANGUAGE SQL MODIFIES SQL DATA
BEGIN
DECLARE done_caixas INT DEFAULT FALSE;
-- Busco todos os caixas da conta a partir de uma data informada.
DECLARE CAIXAS CURSOR FOR
@carlosspohr
carlosspohr / drop-all-foreign-keys.sql
Created March 27, 2014 18:47
A simple query to retrive all foreign keys on drop sintax from a database and/or table.
SELECT
`DROP` ,
`CREATE`
FROM
(
SELECT
CONCAT( "ALTER TABLE `" ,`K`.`TABLE_NAME` ,"` DROP FOREIGN KEY `" ,`K`.`CONSTRAINT_NAME` ,"`;" ) "DROP" ,
CONCAT( "ALTER TABLE `" ,`K`.`TABLE_NAME` ,"` ADD CONSTRAINT " ,"`fk_" ,`K`.`TABLE_NAME` ,"_" ,`K`.`REFERENCED_TABLE_NAME` ,"1" ,"` FOREIGN KEY (`" ,`K`.`COLUMN_NAME` ,"`) REFERENCES " ,"`" ,`K`.`REFERENCED_TABLE_SCHEMA` ,"`.`" ,`K`.`REFERENCED_TABLE_NAME` ,"` (`" ,`K`.`REFERENCED_COLUMN_NAME` ,"`) ON DELETE " ,`C`.`DELETE_RULE` ," ON UPDATE " ,`C`.`UPDATE_RULE` ,";" ) "CREATE"
FROM
`information_schema`.`KEY_COLUMN_USAGE` `K` LEFT JOIN `information_schema`.`REFERENTIAL_CONSTRAINTS` `C`
@carlosspohr
carlosspohr / drop-indexes.sql
Created March 27, 2014 19:39
A simple query to build a sql command to drop all indexes from database.
SELECT
CONCAT('ALTER TABLE `', st.TABLE_NAME, '` DROP INDEX `', st.INDEX_NAME, '` ;') AS indexes
FROM
information_schema.STATISTICS st
WHERE
st.TABLE_SCHEMA = 'your_database'
AND
st.INDEX_NAME != 'PRIMARY'
;