Tag: syndicated

  • Prime Day Recommendations

    It’s Prime Day. A few of my recommendations, since I want to do some shopping myself (yes, these are commissioned referrals). These are things I’ve ordered and used this year. It’s a random list, but maybe you’ll have fun with something here.

    Reshuffle https://amzn.to/44qe1xz

    A great book to get you to think about things changing in the AI world. I’m about 70% through and keep stopping to think.

    Trademaster work gloveshttps://amzn.to/4uUIU8h

    I keep losing the right ones (or the dog takes them), but I’ve gotten 4-5 pairs over the years.

    Cuppa muchroom coffeehttps://amzn.to/44r1Hx2

    Tastes a little funny to me, but my wife loves it and says it gives her energy. I’m skeptical, but I’ve used it.

    Magsafe Phone holder for travelhttps://amzn.to/4ezAe0Q

    I got this on a lark, but I’ve really enjoyed this on planes and even places where I can clip it to a table. It holds really well with a magnetic case.

    Charmast power bank with cableshttps://amzn.to/4fWzsxk

    We have 3 of these. I’ve tried a few others, but this has been a bargain and reliable. Charges quickly, don’t have to hunt for cables, and it’s survived many trips. I have 2 because I leave one in my personal carry on and one in the work bag. My wife grabbed one as well.

    We Are Legion https://amzn.to/4aRJNHp

    I grabbed this for free on Kindle Unlimited to try and loved it. I read all 5 (2, 3, 4, 5). It’s a software guy killed in a hit and run, awakened in the future as he’s uploaded into hardware to be the “AI” for a probe searching the galaxy for places to populate. It’s a fun, wild ride.

    Wrangler Jeans – https://amzn.to/4oGXIpk

    With a flex waistband, which is nice as I age and travel, but I’ve liked these and my wife likes the way they look. I’ll get another pair today.

  • A Career of Memories

    Annabel retired from Redgate Software this week. Across most of my career at Redgate, I’ve participated in many events, some we hosted, some we sponsored. At most of these events, Annabel has been a part of organizing, financing, executing (or all three) the events with me. From SQL in the City to SQL Saturdays to Redgate Summits to the PASS Summit, she and I have been in so many cities and venues around the world.

    2026-06_0155

    She has become a dear friend, and someone I look forward to seeing. A friendly face, a supportive friend, a joy to be around.

    I’m happy for her future, sad she’s moving on, and grateful for the time we shared together. I look forward to quiet lunches and drinks, but will miss the chaos of travel and events.

    I have so many memories across the years. Annabel might be the person I’ve worked with the most in my career. We’ve stood on stages together. I don’t have a picture of us, since I’m often on stage, but here she is with Kendra.

    2026-06_0154

    We’ve prepped for broadcasts

    2026-06_0166

    and she’s delivered the openings.

    2026-06_0162

    We’ve celebrated after events in the US

    2026-06_0149

    In Australia

    2026-06_0156

    We’ve had so many smiles, together

    2026-06_0158

    and with friends.

    2026-06_0157

    We’ve sat in meetings (clearly she’s not as excited a Becky)

    2026-06_0152

    We’ve had so many group shots

    2026-06_0165

    We’ve had fun

    2026-06_0161

    We’ve worked ourselves hard

    2026-06_0153

    We’ve celebrated family

    2026-06_0150

    And we’ve even gone to a deserted island

    2026-06_0164

    If you’ve enjoyed a Redgate event, you likely have Annabel to thank.

    I wish her well in retirement and I look forward to hearing how wonderful life is over lunch in Cambridge this fall.

  • No Shortcuts for the SQLCMD Batch Terminator: #SQLNewBlogger

    I was messing around with SQLCMD and I realized something I hadn’t known. I’ve never tried it, but the batch separator has to be separate, which I’ll show.

    Another post for me that is simple and hopefully serves as an example for people trying to get blogging as #SQLNewBloggers.

    The Batch Terminator

    The default batch terminator in SQL Server tools is “GO”. We tend to use this in SSMS, and many of us know to type this in SQLCMD when we use it. In SSMS, we sometimes need it. Here’s an example where I create a proc and add a RETURN, which some people think means the proc ends.

    It doesn’t.

    2026-05_0092

    The SELECT @@VERSION is a part of the proc. Now, if I drop the proc and then add a GO at the end of a line, , I get this:

    2026-05_0093

    Makes sense. Let’s try two commands. In this case, the GO is skipped and I get two results.

    2026-05_0094

    Using SQLCMD

    If I run SQLCMD and enter that code, I get a new prompt. That’s because the batch separator in SQLCMD is a batch terminator. This is in the SQLCMD docs, and since I haven’t terminated a batch, nothing happens.

    2026-05_0095

    If I hit enter, I get a new prompt. This continues until I enter a go.

    2026-05_0096

    Once I enter Go, I’ll see my results.

    2026-05_0097

    A good thing to know, as you might think you can enter “select * from @@version go” and think it might execute. It won’t, as you see below:

    2026-05_0098

    This isn’t likely a problem for most people as they’ll instinctively enter GO if something doesn’t run, but newbies might miss this.

    SQL New Blogger

    This was about a 10 minute post, based on an experiment to see if I could get something to run quickly. Since I ran the experiment, I captured some screenshots and built this post.

    Showcase continued learning, especially in this era of AI where you might need to guide an LLM along a better path.

  • AI Experiments: Parsing Payment Memos

    As part of my running the SQL Saturday charitable foundation, I get sponsorship money from vendors. Primarily Microsoft and AMD, but I hope to change that in the future. In any case, I recently got a payment notification that my invoice had been paid.

    I knew I had a few invoices outstanding, so I wasn’t sure what was included. MS tries to bundle payments, but I don’t get an email for each one. For this one, I didn’t see an email, so I suspected I’d put the wrong one in or typo’d it.

    The Usual Process

    When I get payments, I have to reconcile those in my General Ledger, recording the amount and allocating to the events. I then send out payments to the event organizers and record those.

    This is a mostly manual process, but since I sometimes submit multiple invoices at once, I have to figure out what was paid. I could submit 3 invoices and get 1, 2, or 3 payments. Microsoft Finance usually bundles things, but since I can have a lot of events in flight, I need to know where money gets allocated.

    In this case, I didn’t see an email and didn’t want to log into the invoice system and start finding the various invoices paid and clicking through details. Instead, I logged into the bank to verify the amount and I saw a memo. It was something like this (I’ve changed a bunch of data in here.

    2026-06_0123

    I thought it would be obvious which invoices were paid, but I couldn’t quickly figure this out. I decided to turn to AI.

    AI to the Rescue

    First, I knew I had a “no training” AI plan with Claude, so I wasn’t concerned about data release here.

    I had this prompt and then pasted in the data: “can you help me separate this by ? and make sense of what is included?”

    The result was interesting, and useful. It labeled this task as EDI 820 parsing, so apparently this is EDI format. The last time I worked with EDI is was XML based, but perhaps this is the new way of doing things.

    The results were great. I got a summary, none of which I needed, but good to know this was easily recognized and parsed.

    2026-06_0124

    The really interesting part was below some of the acronym descriptions, where my invoices were found.

    2026-06_0125

    I knew this would be certain events, but wanted to double check the numbers. When I put in an invoice number, I use the date and event. Here I got 3 of my events (1146, 1154, 1134) paid from a day where I invoiced 5 events. This let me quickly enter my GL and also know to whom I was sending money.

    A cool time saving AI trick. Rather than 10-15 minutes to reconcile things, AI gave me answers in seconds and I had fixed the GL in a couple of minutes, allocating the funds to events.

    Of course, I needed to ensure data security with my plan and I verified these were events where I had planned to send money. Still me as the expert reviewing things and making decisions, but way easier than trying to sort out invoice numbers from a bunch of EDI text.