Joel Murach

+ Follow
since Jun 10, 2003
Merit badge: grant badges
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Joel Murach

Galen Benson wrote:I'm not successful at getting the debugger to work in MySQL. Is there some trick or setting I need to turn on. Does your book have a section on the debugger.

Hi Galen - Unfortunately, our book doesn't have a section on the debugger.

Galen Benson wrote:Also... I'm trying to learn about Redis and if it will speed up my database queries (searches seem to take a long time) are there any tools you recommend to tune MySQL and can I learn tuning from your book.

As for as tuning goes, our book only covers some basic guidelines for improving performance such as when to create an index on a column and how to write a query that doesn't retrieve more data than necessary. That's because our book focuses on teaching the basics of working with SQL and relational databases and only teaches some basic database administration skills, not much on tuning or in-memory storage. Sorry about that. I wish you the best in speeding up your database searches!

Stephan Peters wrote:Alright, I'll give it a shot this Sunday and run some of the scripts from the book and let you know how it went.

That would be great. Thanks!

I find it a bit funny that including "mysql" in the pacman command gives you MariaDB. But I think that just shows that they are mostly interchangeable.
Hi Sundar - Thanks for your support over the years. I appreciate it.

Whenever we update a book, we start by evaluating the new features and determining which ones we should present. With MySQL, most of the latest features are advanced features that go beyond the scope of our book, which is designed to teach how to use SQL with a relational database. However, there are times when a new feature or technique becomes important enough that we have to include it.  Sometimes, it's a feature that's so useful that we have to integrate it throughout the book. Other times, it's a feature that we can cover by adding a few pages or sometimes even an entire chapter. In this edition of our MySQL book, there weren't too many changes, except that we decided it was time to add a chapter on how to host a MySQL database in the AWS (Amazon Web Services) cloud.

Tim Holloway wrote:I hope you've stressed that the "ci" part of that means case-insensitive.

We did!
Hi Cagatay,

To be honest, except for a few bug fixes and minor changes, most of the 4th Edition of this book is the same as the 3rd Edition. That's because MySQL has been really stable in recent years, which is good. The only significant change is that we added a chapter that shows how to host a MySQL database with AWS (Amazon Web Services). We added this chapter to address the trend in the tech industry of moving away from using local servers to host databases and websites towards using servers in the cloud.
Hi Stephan,

Thanks for the kind words about the 3rd Edition of our book. I'm glad you like the section on stored procedures and functions.

I haven't tried it myself, but I think the databases and examples presented in our book will also work with MariaDB. That's because, at the time that we developed and tested this code, MariaDB's stated goal was to be a "drop-in" replacement for MySQL. I don't think that's true anymore, or at least not for advanced features, but our book focuses on basic features, so I think it should work with MariaDB.
Hi Bill,

Aside from a brief mention of the various BLOB data types supported by MySQL, our book doesn't show how to deal with this issue. I think you can probably find a tutorial online that shows how to do this.

Sorry I couldn't be of more help on this issue!
Hi Syed,

We designed this MySQL book with the goal of making it easier than ever to learn SQL to work with a MySQL database. Hopefully it can help you. And once you learn how to use SQL to work with MySQL, you can use most of the same SQL skills on other databases too.
Hi Tina,

I'm glad to hear that our MySQL book worked well for you as a SQL reference!
Hi Roberto,

It seems like your question is about the learning curve from the sqlplus CLI compared to the MySQL Workbench GUI. If I'm right about that, I don't think there will be much of a learning curve for you at all as I think Workbench is probably a lot easier to use than sqlplus. Also, for basic queries, I don't think you'll have much trouble switching from Oracle SQL to MySQL. They're pretty similar, in my opinion.
Howdy to all you code ranchers out there, ornery or not!

To answer Tim's question: With MySQL 8.0 and later, the utf8mb4 character set is the default, and it uses the utf8mb4_0900_ai_ci collation by default. So, the Swedish collation is no longer the default.
Hi Jeanne. Thanks for this review of our latest Java book.

I'm glad you think we did a good job of modernizing this book overall, and I agree with you that we should have modernizing our coverage of file I/O. I will put that on the list for the next edition!

We will also consider adding coverage of IntelliJ to the next edition. I think you're right that IntelliJ is at least as popular if not more popular than Eclipse or NetBeans. I think IntelliJ has been gaining in popularity for years now, probably since 2009 when JetBrains introduced the open-source Community Edition, and we were slow to realize it.

Have a great day,
1 year ago
Ah, the sweet smell of victory.

Thank YOU for pointing out this problem with my book. As I said, I'll fix the code in the download so other readers don't encounter this problem.
5 years ago
Looking at this problem again this morning, I think you're doing everything right, except that the starting point and solution that I supplied for the ch10_ex1_Product project is not correct. My solution runs, but that's because the murach.jar file I supplied is also not correct. For example, it provides a Console.getStringInput() method, but it should provide a Console.getString() method.

To fix this problem, I am going to use the same Console and Product classes from ch10_ex1_LineItem in ch10_ex1_Product. This should eliminate inconsistencies in the Console and Product classes, except for the changes to their packages that are made during the exercise. Since I have your email address, I'm going to send you some zip files with the new starting points and solutions. And within the next few days, I will fix the downloadable files on our website for the rest of the world.

I apologize for this mistake. And I thank you for pointing it out.
5 years ago
Hi Dustin,

I just watched your video, and it's clear that I included some bad files for the exercise starts. I think you did a great job figuring out the problems with these files and fixing them. I'm not exactly sure why your solution didn't work, but I'm going to take another look at it tomorrow and hopefully I'll be able to figure it out. Also, I'm going to fix the starting points for the exercises so other Eclipse users don't encounter the same problem you did with my book.

Thanks for pointing out this issue. Again, I should have more info for you sometime tomorrow. Cheers...

Joel Murach
5 years ago