OK, yeasterday I published a post where I complained about the complexities
of Drag-and-Drop in plain C on Windows, and how this was related
to Object Orientation gone bad. Why do you need three or 4
objects, jsut to drag a string of text from one place to
another?
Well, then, if you agree that this is outrageous, I have help for
you now. I just published my plain C library that does just this.
You simple Win32 C program need not worry about OLE or COM. About
IDataObject or interfaces or any of that stuff. Just usse
hardcore C, like all macho developers like myself do. You need my
library though, and I admit I AM cheating a bit in it, but
actually, it does the trick and it follows the rules, both from
COM/OLE and Win32 points of views.
Now, to drag and receive a text string, you need my library and …
A colleague at work asked me “how can I run a case sensitive select on a case insensitive table?” out of curiosity and for a moment I hesitated, then said, yeah why not :) ….
Below are two different approaches (one of which is quite inefficient) and if anyone has another way, better or worse, please do leave a comment with your suggested approach :).
Cheers,
Darren
Preparation
mysql [localhost] {root} (test) > create table t1(a
varchar(20));
Query OK, 0 rows affected (0.02 sec)
mysql [localhost] {root} (test) > insert into t1 (a) values
('darren');
Query OK, 1 row affected (0.00 sec)
mysql [localhost] {root} (test) > insert into t1 (a) values
('Darren');
Query OK, 1 row affected (0.00 sec)
mysql [localhost] {root} (test) > insert into t1 (a) values
('DarRen');
Query OK, 1 row affected (0.00 …
Hi all,
The past few months, I've been developing a course on the concepts of cloud computing and virtualization. It's coming along very well, and this week I've been working on a demo for an application in the cloud that uses a database located elsewhere in the cloud (i.e. on another virtual server). I'd thought I share the steps with you. I used MySQL, but the steps should be similar for other databases.
- Install MySQL on the server.
- Create a new user for MySQL:
create user USERNAME identified by 'PASSWORD';
- Grant the user access to the database:
grant all privileges on DATABASE.* to USERNAME identified by 'PASSWORD';
- Then I started up the IDE and went to the Services window, where I connected to my local MySQL database.
- After connecting, I right-clicked the MySQL driver node and
chose Connect Using.
The New Database Connection dialog box …
Hi all,
The past few months, I've been developing a course on the concepts of cloud computing and virtualization. It's coming along very well, and this week I've been working on a demo for an application in the cloud that uses a database located elsewhere in the cloud (i.e. on another virtual server). I'd thought I share the steps with you. I used MySQL, but the steps should be similar for other databases.
- Install MySQL on the server.
- Create a new user for MySQL:
create user USERNAME identified by 'PASSWORD';
- Grant the user access to the database:
grant all privileges on DATABASE.\* to USERNAME identified by 'PASSWORD';
- Then I started up the IDE and went to the Services window, where I connected to my local MySQL database.
- After connecting, I right-clicked the MySQL driver node and
chose Connect Using.
The New Database Connection dialog box …
After the slow down due to vacation and warm weather we are ready
for a series of educative Italian webinars on MySQL. Here is the
list:
Semptember 10@10am CET - "Top 5 Tuning tips for MySQL"
Are your applications slow during peak times? Is the database
running slowly? Do you find difficult to pinpoint performance
problems? Then this webinar is for you!I will cover the top 5
tips to speed up your MySQL databases from a developer as well as
DBA point of view.
October 8@10am CET - "Introduction to MySQL for Windows"
Do you know that MySQL is used extensively on Windows? Would you
like to learn the tools that we provide?
Join this webinar! We will discuss the advantages of using
MySQL on the …
Last week we ended the first Monty Program Ab company meeting in Mallorca, Spain. Even if many of us have met before, there are a couple who had not met everyone before and it was great to be together. Even for myself, since I was in the Sales org at MySQL and Sun, I wasn't that close with all the oldtime developers, so it was great to finally spend several days with them.
Since it was the first meeting both for the company and MariaDB project, we spent a lot of time on the "vision, strategy" excercises. Btw, for future MariaDB meetings we will in the future always invite all the Maria Captains and other community members, it is not intended to be a meeting of one company at all. For this meeting, we had 3 non-employees present and they gave valuable input, so it already works, even if we will do more of it in the future.
…
[Read more]Last week on the train to Seattle I was hacking on the new libdrizzle protocol plugin when realized I could really use a debugging console that did not require any socket communication. Since I abstracted a Client plugin in the server (Protocol class for the MySQL folks), this can easily be done by just writing a new plugin. I needed to do some refactoring with the listener plugin to not require a TCP socket/accept and instead poll any arbitrary file descriptor. This allows the the Listen plugin to create the client instance any way it wants. After a bit of hacking and cleanup, we now have this:
shell$ ./drizzled/drizzled --datadir=/home/eday/other/drizzle.data InnoDB: The InnoDB memory heap is disabled InnoDB: Mutexes and rw_locks use GCC atomic builtins. 090827 0:29:34 InnoDB: highest supported file format is Barracuda. 090827 0:29:34 InnoDB Plugin 1.0.3 started; log sequence number 8157346 Listening on :::4427 Listening on 0.0.0.0:4427 …[Read more]
Folks, I just want to warn you how buggy partitioned tables with negative values are. Never
use negative values for InnoDB auto_increment columns!!!!
- Assertion failed: next_insert_id >= auto_inc_interval_for_cur_row.minimum()
- partitioned innodb tables end up with duplicate primary key values!
- AUTO_INCREMENT errors with partitioned InnoDB tables in 5.1.31
- Assertion failure in file …
I wanted to write a few administrative updates in one so I didn't spam everyone's feed readers too much. Here we go:
- We've had reports of some lost comments. We reported this via Twitter a while ago, but thought it was fixed. We'll try and pay more attention to spam filtering, but we wanted to reach out and say - let us know if you are one of the people having problems. We're listening. (Of course if you have any suggestions on how to manage/filter through thousands of spam items/week, we'd like to know as well).
- Pingbacks were recently dropped when we upgraded to Wordpress 2.8. Miss them? …
I'm now working in a CentOS Linux environment, and since my
Solaris days are over, I'm feeling a bit handicapped by not
having DTrace and iosnoop. It still amazes me that monitoring
MyISAM table data and index IO is not more common, especially in
heavy duty environments.
My search for an analogous tracing system on Linux lead me to
strace. I have been playing with this a little and although I am
disappointed overall, I have been able to figure out how to
gather what I need. It isn't pretty.
So far, my favored invocation of strace on an active mysqld
process is :
strace -q -tt -e trace=open,close,read,write,pread64,pwrite64 -s
256 -f -v -p 2>&1
strace by default directs it's output to STDERR, unless you
specify a file ( -o ). I wanted the output to go to STDOUT so I
can pipe it into a script that will roll up the output and report
by the minute. My goal will be to print an example …